[gq-commit] gq/src schema.c,1.19,1.20
Status: Beta
Brought to you by:
sur5r
From: <sta...@us...> - 2003-10-11 09:14:11
|
Update of /cvsroot/gqclient/gq/src In directory sc8-pr-cvs1:/tmp/cvs-serv23172 Modified Files: schema.c Log Message: * Got rid of yet another fixed-size buffer (problematic with UTF-8) Index: schema.c =================================================================== RCS file: /cvsroot/gqclient/gq/src/schema.c,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** schema.c 8 Oct 2003 22:01:12 -0000 1.19 --- schema.c 11 Oct 2003 09:14:07 -0000 1.20 *************** *** 97,101 **** char *attr, **vals; const char *errp; ! char subschema[100]; char *subschemasubentry[] = { "subschemaSubentry", NULL }; --- 97,101 ---- char *attr, **vals; const char *errp; ! char *subschema = NULL; char *subschemasubentry[] = { "subschemaSubentry", NULL }; *************** *** 114,118 **** ss = NULL; - subschema[0] = 0; server->flags |= SERVER_HAS_NO_SCHEMA; statusbar_msg(_("subschemaSubentry search on root DSE")); --- 114,117 ---- *************** *** 138,144 **** if( (attr = ldap_first_attribute(ld, res, &berptr)) ) { if( (vals = ldap_get_values(ld, res, attr)) ) { ! if(strlen(vals[0]) < sizeof(subschema) - 1) { ! strcpy(subschema, vals[0]); /* Flawfinder: ignore */ ! } ldap_value_free(vals); } --- 137,141 ---- if( (attr = ldap_first_attribute(ld, res, &berptr)) ) { if( (vals = ldap_get_values(ld, res, attr)) ) { ! subschema = g_strdup(vals[0]); ldap_value_free(vals); } *************** *** 152,156 **** ldap_msgfree(res); ! if(subschema[0] == 0) { statusbar_msg("%s", _("no schema information found")); close_connection(server, FALSE); --- 149,153 ---- ldap_msgfree(res); ! if(subschema == NULL) { statusbar_msg("%s", _("no schema information found")); close_connection(server, FALSE); *************** *** 162,165 **** --- 159,164 ---- msg = ldap_search_s(ld, subschema, LDAP_SCOPE_BASE, "(objectclass=*)", schema_attrs, 0, &res); + + g_free_if(subschema); if(msg != LDAP_SUCCESS) { |