]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
Import slap_loglevel_get() integer fix (ITS#5035 part 4)
authorHallvard Furuseth <hallvard@openldap.org>
Mon, 23 Jul 2007 21:41:30 +0000 (21:41 +0000)
committerHallvard Furuseth <hallvard@openldap.org>
Mon, 23 Jul 2007 21:41:30 +0000 (21:41 +0000)
servers/slapd/bconfig.c

index 73d85230fd5986e3ca471e45b5182344287120cc..682a54818b1cfcb190b92919d7d51ec0a32ec634 100644 (file)
@@ -2102,8 +2102,7 @@ int
 slap_loglevel_get( struct berval *s, int *l )
 {
        int             rc;
-       unsigned long   i;
-       slap_mask_t     m;
+       slap_mask_t     m, i;
 
        if ( loglevel_ops == NULL ) {
                loglevel_init();
@@ -2113,12 +2112,10 @@ slap_loglevel_get( struct berval *s, int *l )
                m |= loglevel_ops[ i ].mask;
        }
 
-       m = ~m;
-
-       for ( i = 1; i <= ( 1 << ( sizeof( int ) * 8 - 1 ) ) && !( m & i ); i <<= 1 )
+       for ( i = 1; m & i; i <<= 1 )
                ;
 
-       if ( !( m & i ) ) {
+       if ( i == 0 ) {
                return -1;
        }