check return value of base64_encode
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4119 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -121,7 +121,11 @@ kauth(int argc, char **argv)
|
||||
memset(key, 0, sizeof(key));
|
||||
memset(schedule, 0, sizeof(schedule));
|
||||
memset(passwd, 0, sizeof(passwd));
|
||||
base64_encode(tktcopy.dat, tktcopy.length, &p);
|
||||
if(base64_encode(tktcopy.dat, tktcopy.length, &p) < 0) {
|
||||
printf("Out of memory base64-encoding.\n");
|
||||
code = -1;
|
||||
return;
|
||||
}
|
||||
memset (tktcopy.dat, 0, tktcopy.length);
|
||||
ret = command("SITE KAUTH %s %s", name, p);
|
||||
free(p);
|
||||
|
@@ -447,7 +447,11 @@ do_klogin(char *host)
|
||||
return ret;
|
||||
}
|
||||
|
||||
base64_encode(krb4_adat.dat, krb4_adat.length, &p);
|
||||
if(base64_encode(krb4_adat.dat, krb4_adat.length, &p) < 0) {
|
||||
printf("Out of memory base64-encoding.\n");
|
||||
verbose = old_verbose;
|
||||
return -1;
|
||||
}
|
||||
ret = command("ADAT %s", p);
|
||||
free(p);
|
||||
|
||||
@@ -502,7 +506,8 @@ krb4_quit(void)
|
||||
data_prot = 0;
|
||||
}
|
||||
|
||||
int krb4_write_enc(FILE *F, char *fmt, va_list ap)
|
||||
int
|
||||
krb4_write_enc(FILE *F, char *fmt, va_list ap)
|
||||
{
|
||||
int len;
|
||||
char *p;
|
||||
@@ -512,7 +517,9 @@ int krb4_write_enc(FILE *F, char *fmt, va_list ap)
|
||||
vsnprintf(buf, sizeof(buf), fmt, ap);
|
||||
len = krb_mk_priv(buf, enc, strlen(buf), schedule, &key,
|
||||
&myctladdr, &hisctladdr);
|
||||
base64_encode(enc, len, &p);
|
||||
if(base64_encode(enc, len, &p) < 0) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
fprintf(F, "ENC %s", p);
|
||||
free (p);
|
||||
|
@@ -231,7 +231,10 @@ kauth(char *principal, char *ticket)
|
||||
reply(500, "Kerberos error: %s.", krb_get_err_text(ret));
|
||||
return;
|
||||
}
|
||||
base64_encode(cip.dat, cip.length, &p);
|
||||
if(base64_encode(cip.dat, cip.length, &p) < 0) {
|
||||
reply(500, "Out of memory while base64-encoding.");
|
||||
return;
|
||||
}
|
||||
reply(300, "P=%s T=%s", krb_unparse_name(&pr), p);
|
||||
free(p);
|
||||
memset(&cip, 0, sizeof(cip));
|
||||
|
@@ -122,7 +122,10 @@ int krb4_adat(char *auth)
|
||||
reply(535, "Error creating reply: %s.", strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
base64_encode(msg, len, &p);
|
||||
if(base64_encode(msg, len, &p) < 0) {
|
||||
reply(535, "Out of memory base64-encoding.");
|
||||
return -1;
|
||||
}
|
||||
reply(235, "ADAT=%s", p);
|
||||
auth_complete = 1;
|
||||
free(p);
|
||||
@@ -364,9 +367,12 @@ krb4_vprintf(const char *fmt, va_list ap)
|
||||
len = 0; /* XXX */
|
||||
code = 631;
|
||||
}
|
||||
base64_encode(enc, len, &p);
|
||||
if(base64_encode(enc, len, &p) < 0) {
|
||||
; /* XXX */
|
||||
} else {
|
||||
fprintf(stdout, "%d %s\r\n", code, p);
|
||||
free(enc);
|
||||
free(p);
|
||||
}
|
||||
free(enc);
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user