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) {
|