(krb5_domain_x500_encode): if num_realms == 0, set encoding and return

(avoids malloc(0)), check return value for malloc


git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13062 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2003-10-21 23:06:50 +00:00
parent f052cd93b0
commit 4cd19e3fe3

View File

@@ -368,6 +368,11 @@ krb5_domain_x500_encode(char **realms, int num_realms, krb5_data *encoding)
char *s = NULL;
int len = 0;
int i;
if (num_realms == 0) {
encoding->data = NULL;
encoding->length = 0;
return 0;
}
for(i = 0; i < num_realms; i++){
len += strlen(realms[i]);
if(realms[i][0] == '/')
@@ -375,6 +380,8 @@ krb5_domain_x500_encode(char **realms, int num_realms, krb5_data *encoding)
}
len += num_realms - 1;
s = malloc(len + 1);
if (s == NULL)
return ENOMEM;
*s = '\0';
for(i = 0; i < num_realms; i++){
if(i && i < num_realms - 1)