Diff for /libraries/liblber/dtest.c between versions 1.2 and 1.22

version 1.2, 1998/10/24 23:41:55 version 1.22, 1999/08/01 23:50:08
Line 1 Line 1
 /* dtest.c - lber decoding test program */  /* dtest.c - lber decoding test program */
 /*  /*
    * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved.
    * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
    */
   /* Portions
  * Copyright (c) 1990 Regents of the University of Michigan.   * Copyright (c) 1990 Regents of the University of Michigan.
  * All rights reserved.   * All rights reserved.
  *   *
Line 14 Line 18
 #include "portable.h"  #include "portable.h"
   
 #include <stdio.h>  #include <stdio.h>
 #include <stdlib.h>  
   
   #include <ac/stdlib.h>
 #include <ac/string.h>  #include <ac/string.h>
 #include <ac/socket.h>  #include <ac/socket.h>
   #include <ac/unistd.h>
   
 #ifdef HAVE_CONSOLE_H  #ifdef HAVE_CONSOLE_H
 #include <console.h>  #include <console.h>
 #endif /* MACOS */  #endif
   
 #include "lber.h"  #include <lber.h>
   
 static void usage( char *name )  static void usage( char *name )
 {  {
         fprintf( stderr, "usage: %s fmt\n", name );          fprintf( stderr, "usage: %s fmt\n", name );
 }  }
   
   int
 main( int argc, char **argv )  main( int argc, char **argv )
 {  {
         long            i;          char *s;
         unsigned long   len;          int rc;
         int             tag;  
         BerElement      ber;          ber_tag_t       tag;
         Sockbuf         sb;          ber_len_t       len;
         extern char     *optarg;  
           BerElement      *ber;
           Sockbuf         *sb;
   
           /* enable debugging */
           int ival = -1;
           ber_set_option( NULL, LBER_OPT_DEBUG_LEVEL, &ival );
   
           if ( argc < 2 ) {
                   usage( argv[0] );
                   return( EXIT_FAILURE );
           }
   
 #ifdef HAVE_CONSOLE_H  #ifdef HAVE_CONSOLE_H
         ccommand( &argv );          ccommand( &argv );
         cshow( stdout );          cshow( stdout );
 #endif /* MACOS */  #endif
   
           sb = ber_sockbuf_alloc_fd( fileno(stdin) );
   
         memset( &sb, 0, sizeof(sb) );          if( (ber = ber_alloc_t(LBER_USE_DER)) == NULL ) {
         sb.sb_sd = 0;                  perror( "ber_alloc_t" );
         sb.sb_ber.ber_buf = NULL;                  return( EXIT_FAILURE );
           }
   
         if ( (tag = ber_get_next( &sb, &len, &ber )) == -1 ) {          if(( tag = ber_get_next( sb, &len, ber) ) == LBER_ERROR ) {
                 perror( "ber_get_next" );                  perror( "ber_get_next" );
                 exit( 1 );                  return( EXIT_FAILURE );
         }          }
         printf( "message has tag 0x%x and length %ld\n", tag, len );  
   
         if ( ber_scanf( &ber, "i", &i ) == -1 ) {          printf("decode: message tag 0x%lx and length %ld\n",
                 fprintf( stderr, "ber_scanf returns -1\n" );                  (unsigned long) tag, (long) len );
                 exit( 1 );  
           for( s = argv[1]; *s; s++ ) {
                   char buf[128];
                   char fmt[2];
                   fmt[0] = *s;
                   fmt[1] = '\0';
   
                   printf("decode: format %s\n", fmt );
                   len = sizeof(buf);
                   rc = ber_scanf( ber, fmt, &buf[0], &len );
   
                   if( rc == LBER_ERROR ) {
                           perror( "ber_scanf" );
                           return( EXIT_FAILURE );
                   }
         }          }
         printf( "got int %d\n", i );  
   
         return( 0 );          ber_sockbuf_free( sb );
           return( EXIT_SUCCESS );
 }  }

Removed from v.1.2  
changed lines
  Added in v.1.22


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