Diff for /libraries/liblber/decode.c between versions 1.4.10.4 and 1.6

version 1.4.10.4, 1998/09/28 17:27:54 version 1.6, 1998/10/26 00:18:42
Line 11 Line 11
  * is provided ``as is'' without express or implied warranty.   * is provided ``as is'' without express or implied warranty.
  */   */
   
 #define DISABLE_BRIDGE /* disable LDAP_BRIDGE code */  
 #include "portable.h"  #include "portable.h"
   
 #include <stdio.h>  #include <stdio.h>
Line 24 Line 23
 #endif  #endif
   
 #include <ac/string.h>  #include <ac/string.h>
   #include <ac/socket.h>
   
 #ifdef MACOS  #include "lber-int.h"
 #include "macos.h"  
 #endif /* MACOS */  
   
 #include <sys/types.h>  
 #include <sys/socket.h>  
 #include <netinet/in.h>  
   
 #ifdef PCNFS  
 #include <tklib.h>  
 #endif /* PCNFS */  
 #if defined( DOS ) || defined( _WIN32 )  
 #include "msdos.h"  
 #endif /* DOS */  
   
 #include "lber.h"  
   
 #ifdef LDAP_DEBUG  #ifdef LDAP_DEBUG
 int     lber_debug;  int     lber_debug;
Line 126  ber_skip_tag( BerElement *ber, unsigned Line 111  ber_skip_tag( BerElement *ber, unsigned
                 if ( ber_read( ber, (char *) &netlen + diff, noctets )                  if ( ber_read( ber, (char *) &netlen + diff, noctets )
                     != noctets )                      != noctets )
                         return( LBER_DEFAULT );                          return( LBER_DEFAULT );
                 *len = LBER_NTOHL( netlen );                  *len = AC_NTOHL( netlen );
         } else {          } else {
                 *len = lc;                  *len = lc;
         }          }
Line 175  ber_getnint( BerElement *ber, long *num, Line 160  ber_getnint( BerElement *ber, long *num,
         sign = (0x80 & *(p+diff) );          sign = (0x80 & *(p+diff) );
         if ( sign && len < sizeof(long) ) {          if ( sign && len < sizeof(long) ) {
                 for ( i = 0; i < diff; i++ ) {                  for ( i = 0; i < diff; i++ ) {
                         *(p+i) = 0xff;                          *(p+i) = (unsigned char) 0xff;
                 }                  }
         }          }
         *num = LBER_NTOHL( netnum );          *num = AC_NTOHL( netnum );
   
         return( len );          return( len );
 }  }
Line 191  ber_get_int( BerElement *ber, long *num Line 176  ber_get_int( BerElement *ber, long *num
         if ( (tag = ber_skip_tag( ber, &len )) == LBER_DEFAULT )          if ( (tag = ber_skip_tag( ber, &len )) == LBER_DEFAULT )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         if ( ber_getnint( ber, num, (int)len ) != len )          if ( (unsigned long) ber_getnint( ber, num, (int)len ) != len )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
         else          else
                 return( tag );                  return( tag );
Line 210  ber_get_stringb( BerElement *ber, char * Line 195  ber_get_stringb( BerElement *ber, char *
         if ( datalen > (*len - 1) )          if ( datalen > (*len - 1) )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         if ( ber_read( ber, buf, datalen ) != datalen )          if ( (unsigned long) ber_read( ber, buf, datalen ) != datalen )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         buf[datalen] = '\0';          buf[datalen] = '\0';
Line 249  ber_get_stringa( BerElement *ber, char * Line 234  ber_get_stringa( BerElement *ber, char *
         if ( (*buf = (char *) malloc( (size_t)datalen + 1 )) == NULL )          if ( (*buf = (char *) malloc( (size_t)datalen + 1 )) == NULL )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         if ( ber_read( ber, *buf, datalen ) != datalen )          if ( (unsigned long) ber_read( ber, *buf, datalen ) != datalen )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
         (*buf)[datalen] = '\0';          (*buf)[datalen] = '\0';
   
Line 282  ber_get_stringal( BerElement *ber, struc Line 267  ber_get_stringal( BerElement *ber, struc
         if ( ((*bv)->bv_val = (char *) malloc( (size_t)len + 1 )) == NULL )          if ( ((*bv)->bv_val = (char *) malloc( (size_t)len + 1 )) == NULL )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         if ( ber_read( ber, (*bv)->bv_val, len ) != len )          if ( (unsigned long) ber_read( ber, (*bv)->bv_val, len ) != len )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
         ((*bv)->bv_val)[len] = '\0';          ((*bv)->bv_val)[len] = '\0';
         (*bv)->bv_len = len;          (*bv)->bv_len = len;
Line 319  ber_get_bitstringa( BerElement *ber, cha Line 304  ber_get_bitstringa( BerElement *ber, cha
         if ( ber_read( ber, (char *)&unusedbits, 1 ) != 1 )          if ( ber_read( ber, (char *)&unusedbits, 1 ) != 1 )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         if ( ber_read( ber, *buf, datalen ) != datalen )          if ( (unsigned long) ber_read( ber, *buf, datalen ) != datalen )
                 return( LBER_DEFAULT );                  return( LBER_DEFAULT );
   
         *blen = datalen * 8 - unusedbits;          *blen = datalen * 8 - unusedbits;

Removed from v.1.4.10.4  
changed lines
  Added in v.1.6


______________
© Copyright 1998-2020, OpenLDAP Foundation, info@OpenLDAP.org