(c) == '+' || (c) == '/' || (c) == '=' \
)
-extern int base64_decode_atom(char *atom, unsigned char *out);
-extern int base64_lines(int datalen);
-extern void base64_encode_atom(unsigned char *data, int n, char *out);
-extern void base64_encode(FILE *fp, unsigned char *data, int datalen, int cpl);
-
/*
* Read an ASN.1/BER identifier and length pair.
*
char *modptr;
int modlen;
+ blob = NULL;
+
if (!key)
return NULL;
* Header lines can end in a trailing backslash for
* continuation.
*/
- while ((len = strlen(p)) > sizeof(buffer) - (p-buffer) -1 ||
+ while ((len = strlen(p)) > (int)(sizeof(buffer) - (p-buffer) -1) ||
p[len-1] != '\n' || p[len-2] == '\\') {
- if (len > (p-buffer) + sizeof(buffer)-2) {
+ if (len > (int)((p-buffer) + sizeof(buffer)-2)) {
errmsg = "Header line too long to deal with";
goto error;
}
{
int slen = 60; /* starts at 60 due to "Comment: " */
char *c = key->comment;
- while (strlen(c) > slen) {
+ while ((int)strlen(c) > slen) {
fprintf(fp, "%.*s\\\n", slen, c);
c += slen;
slen = 70; /* allow 70 chars on subsequent lines */