]> git.sur5r.net Git - openldap/blobdiff - libraries/libldap/ftest.c
Merge remote-tracking branch 'origin/mdb.master' into OPENLDAP_REL_ENG_2_4
[openldap] / libraries / libldap / ftest.c
index 120bce7a99e9e0c615dc14e75b70f2d170f1379a..b5f98db5ae508d645632f8bc078db5f2eb25f9f2 100644 (file)
@@ -1,9 +1,18 @@
+/* ftest.c -- OpenLDAP Filter API Test */
 /* $OpenLDAP$ */
-/*
- * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
- * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * Copyright 1998-2013 The OpenLDAP Foundation.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.
+ *
+ * A copy of this license is available in the file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * <http://www.OpenLDAP.org/license.html>.
  */
-/* OpenLDAP Filter API Test */
 
 #include "portable.h"
 
@@ -15,7 +24,8 @@
 
 #include <ldap.h>
 
-#include "ldap-int.h"
+#include "ldap_pvt.h"
+#include "lber_pvt.h"
 
 #include "ldif.h"
 #include "lutil.h"
@@ -28,7 +38,7 @@ int usage()
 {
        fprintf( stderr, "usage:\n"
                "  ftest [-d n] filter\n"
-               "    filter - RFC 2254 string representation of an "
+               "    filter - RFC 4515 string representation of an "
                        "LDAP search filter\n" );
        return EXIT_FAILURE;
 }
@@ -38,7 +48,6 @@ main( int argc, char *argv[] )
 {
        int c;
        int debug=0;
-       char *filter=NULL;
 
     while( (c = getopt( argc, argv, "d:" )) != EOF ) {
                switch ( c ) {
@@ -77,7 +86,7 @@ main( int argc, char *argv[] )
 static int filter2ber( char *filter )
 {
        int rc;
-       struct berval *bv = NULL;
+       struct berval bv = BER_BVNULL;
        BerElement *ber;
 
        printf( "Filter: %s\n", filter );
@@ -88,23 +97,22 @@ static int filter2ber( char *filter )
                return EXIT_FAILURE;
        }
 
-       rc = ldap_int_put_filter( ber, filter );
+       rc = ldap_pvt_put_filter( ber, filter );
        if( rc < 0 ) {
                fprintf( stderr, "Filter error!\n");
                return EXIT_FAILURE;
        }
 
-       rc = ber_flatten( ber, &bv );
+       rc = ber_flatten2( ber, &bv, 0 );
        if( rc < 0 ) {
-               perror( "ber_flatten" );
+               perror( "ber_flatten2" );
                return EXIT_FAILURE;
        }
 
-       printf( "BER encoding (len=%ld):\n", (long) bv->bv_len );
-       ber_bprint( bv->bv_val, bv->bv_len );
+       printf( "BER encoding (len=%ld):\n", (long) bv.bv_len );
+       ber_bprint( bv.bv_val, bv.bv_len );
 
-       ber_free( ber, 0 );
-       ber_bvfree( bv );
+       ber_free( ber, 1 );
 
        return EXIT_SUCCESS;
 }