From: Quanah Gibson-Mount Date: Mon, 10 Nov 2008 20:16:41 +0000 (+0000) Subject: check for overflows X-Git-Tag: OPENLDAP_REL_ENG_2_4_13~83 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=09c81c65b5fa2486a3fb08387cf00f385ae2a71e;p=openldap check for overflows --- diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 9df56882da..59646f455f 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -4154,8 +4154,8 @@ syncrepl_unparse( syncinfo_t *si, struct berval *bv ) if ( WHATSLEFT <= STRLENOF( " " ATTRSONLYSTR "=\"" "\"" ) ) return; ptr = lutil_strcopy( ptr, " " ATTRSSTR "=\"" ); old = ptr; - /* FIXME: add check for overflow */ ptr = anlist_unparse( si->si_anlist, ptr, WHATSLEFT ); + if ( ptr == NULL ) return; if ( si->si_allattrs ) { if ( WHATSLEFT <= STRLENOF( ",*\"" ) ) return; if ( old != ptr ) *ptr++ = ','; @@ -4171,8 +4171,8 @@ syncrepl_unparse( syncinfo_t *si, struct berval *bv ) if ( si->si_exanlist && !BER_BVISNULL(&si->si_exanlist[0].an_name) ) { if ( WHATSLEFT <= STRLENOF( " " EXATTRSSTR "=" ) ) return; ptr = lutil_strcopy( ptr, " " EXATTRSSTR "=" ); - /* FIXME: add check for overflow */ ptr = anlist_unparse( si->si_exanlist, ptr, WHATSLEFT ); + if ( ptr == NULL ) return; } if ( WHATSLEFT <= STRLENOF( " " SCHEMASTR "=" ) + STRLENOF( "off" ) ) return; ptr = lutil_strcopy( ptr, " " SCHEMASTR "=" );