Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
#include "fetchmail.h"
#include <string.h>
l += strlen(words[i]) * 3; /* worst case, encode everything */
l += (strlen(charset) + 8) * (l/60 + 1);
- out = v = xmalloc(l);
+ out = v = (char *)xmalloc(l);
t = stpcpy(out, "=?");
t = stpcpy(t, charset);
t = stpcpy(t, "?Q?");
}
if (*u == ' ') { *t++ = '_'; continue; }
if (strchr(encchars, *u)) { *t++ = *u; continue; }
- sprintf(t, "=%02X", (unsigned char)*u);
+ sprintf(t, "=%02X", (unsigned int)((unsigned char)*u));
t += 3;
}
}
count++;
r += strspn(r, ws);
}
- words = xmalloc(sizeof(char *) * (count + 1));
+ words = (char **)xmalloc(sizeof(char *) * (count + 1));
idx = 0;
r = string;
while (*r) {
l = strcspn(r, ws);
- words[idx] = xmalloc(l+1);
+ words[idx] = (char *)xmalloc(l+1);
memcpy(words[idx], r, l);
- words[idx][l] = 0;
+ words[idx][l] = '\0';
idx++;
r += l;
if (!*r) break;
l = strspn(r, ws);
- words[idx] = xmalloc(l+1);
+ words[idx] = (char *)xmalloc(l+1);
memcpy(words[idx], r, l);
- words[idx][l] = 0;
+ words[idx][l] = '\0';
idx++;
r += l;
}
free(words[idx]);
words[idx] = tmp;
for (i = idx + 1; i <= end; i++)
- words[i][0] = 0;
+ words[i][0] = '\0';
idx = end + 2;
}
- for (idx = l = 0; idx < count; idx++) {
+ l = 0;
+ for (idx = 0; idx < count; idx++) {
l += strlen(words[idx]);
}
/* phase 3: limit lengths */
minlen = strlen(charset) + 7;
/* allocate ample memory */
- out = xmalloc(l + (l / (72 - minlen) + 1) * (minlen + 2) + 1);
+ out = (char *)xmalloc(l + (l / (72 - minlen) + 1) * (minlen + 2) + 1);
if (count)
t = stpcpy(out, words[0]);
if (i + 1 < count)
m += strcspn(words[i+1], "\r\n");
if (l + m > 74)
- l = 0, t = stpcpy(t, "\r\n");
+ t = stpcpy(t, "\r\n");
t = stpcpy(t, words[i]);
if (i + 1 < count) {
t = stpcpy(t, words[i+1]);
}
tmp = strrchr(out, '\n');
- if (!tmp) tmp = out; else tmp++;
+ if (tmp == NULL)
+ tmp = out;
+ else
+ tmp++;
l = strlen(tmp);
}