/*
* NOTE WELL: si_key MUST NOT have value of NOTOK
*
- * si_key is 1 if access method is anonymous.
+ * si_val is 1 if access method is anonymous.
*/
struct str2init str2methods[] = {
{ "afs", 1, InitFile },
char *np, *vp;
CT ct;
HF hp;
- m_getfld_state_t gstate = 0;
+ m_getfld_state_t gstate;
/* allocate the content structure */
NEW0(ct);
* Parse the header fields for this
* content into a linked list.
*/
- m_getfld_track_filepos (&gstate, in);
+ gstate = m_getfld_state_init(in);
+ m_getfld_track_filepos2(&gstate);
for (compnum = 1;;) {
int bufsz = sizeof buf;
- switch (state = m_getfld (&gstate, name, buf, &bufsz, in)) {
+ switch (state = m_getfld2(&gstate, name, buf, &bufsz)) {
case FLD:
case FLDPLUS:
compnum++;
/* if necessary, get rest of field */
while (state == FLDPLUS) {
bufsz = sizeof buf;
- state = m_getfld (&gstate, name, buf, &bufsz, in);
+ state = m_getfld2(&gstate, name, buf, &bufsz);
vp = add (buf, vp); /* add to previous value */
}
*cp = '\0';
if (decodeBase64 (buffer, &decoded, &decoded_len, ct->c_type == CT_TEXT,
- ct->c_digested ? digest : NULL) == OK) {
+ ct->c_digested ? digest : NULL) != OK)
+ goto clean_up;
+
+ {
size_t i;
unsigned char *decoded_p = decoded;
for (i = 0; i < decoded_len; ++i) {
}
}
}
- } else {
- goto clean_up;
}
fseek (ct->c_fp, 0L, SEEK_SET);
sizeof digest))
content_error (NULL, ct,
"content integrity suspect (digest mismatch) -- continuing");
- else
- if (debugsw)
- fprintf (stderr, "content integrity confirmed\n");
+ else if (debugsw)
+ fprintf (stderr, "content integrity confirmed\n");
}
fseek (ce->ce_fp, 0L, SEEK_SET);
admonish (cachefile, "unable to fopen for reading");
}
- *fd = fileno (ce->ce_fp);
+ *fd = ce->ce_fp ? fileno (ce->ce_fp) : -1;
return OK;
ready_already:
if (ferror (gp)) {
admonish (ce->ce_file, "error reading");
(void) m_unlink (cachefile);
- }
- else
- if (ferror (fp)) {
- admonish (cachefile, "error writing");
- (void) m_unlink (cachefile);
- }
+ } else if (ferror (fp)) {
+ admonish (cachefile, "error writing");
+ (void) m_unlink (cachefile);
+ }
fclose (fp);
}
umask (mask);
if (ferror (gp)) {
admonish (ce->ce_file, "error reading");
(void) m_unlink (cachefile);
- }
- else
- if (ferror (fp)) {
- admonish (cachefile, "error writing");
- (void) m_unlink (cachefile);
- }
+ } else if (ferror (fp)) {
+ admonish (cachefile, "error writing");
+ (void) m_unlink (cachefile);
+ }
fclose (fp);
}
umask (mask);
fseeko(ce->ce_fp, 0, SEEK_SET);
*file = ce->ce_file;
- return fd;
+ return fileno(ce->ce_fp);
}