]> git.sur5r.net Git - openldap/blobdiff - libraries/libldap/dntest.c
Merge remote branch 'origin/mdb.master'
[openldap] / libraries / libldap / dntest.c
index 65acefa1e08709af626f53ff2cb73ef975fb31b7..25c82809eb93baf280df1ccb58083702584e47ab 100644 (file)
@@ -1,12 +1,24 @@
+/* dntest.c -- OpenLDAP DN API Test Program */
 /* $OpenLDAP$ */
-/*
- * Copyright 1998-2003 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-2011 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>.
+ */
+/* ACKNOWLEDGEMENT:
+ * This program was initially developed by Pierangelo Masarati <ando@OpenLDAP.org>
+ * for inclusion in OpenLDAP Software.
  */
+
 /*
- * OpenLDAP DN API Test
- *      Written by: Pierangelo Masarati <ando@OpenLDAP.org>
- *
  * This program is designed to test the ldap_str2dn/ldap_dn2str
  * functions
  */
@@ -69,11 +81,9 @@ main( int argc, char *argv[] )
        }
 
        if ( strcmp( argv[ 1 ], "-" ) == 0 ) {
-               size_t len;
-               
-               fgets( buf, sizeof( buf ), stdin );
-               len = strlen( buf );
-               if ( len > 0 && buf[ --len ] == '\n' ) {
+               size_t len = fgets( buf, sizeof( buf ), stdin ) ? strlen( buf ) : 0;
+
+               if ( len == 0 || buf[ --len ] == '\n' ) {
                        buf[ len ] = '\0';
                }
                strin = buf;
@@ -159,31 +169,32 @@ main( int argc, char *argv[] )
                case LDAP_DN_FORMAT_LDAPV3:
                case LDAP_DN_FORMAT_LDAPV2:
                        n = ldap_dn2domain( strin, &tmp );
-                       if( n ) {
+                       if ( n ) {
                                fprintf( stdout, "\nldap_dn2domain(\"%s\") FAILED\n", strin );
                        } else {
                                fprintf( stdout, "\nldap_dn2domain(\"%s\")\n"
-                                       "\t= \"%s\"\n", strin, tmp );
+                                       "\t= \"%s\"\n", strin, tmp ? tmp : "" );
                        }
                        ldap_memfree( tmp );
 
                        tmp = ldap_dn2ufn( strin );
                        fprintf( stdout, "\nldap_dn2ufn(\"%s\")\n"
-                                       "\t= \"%s\"\n", strin, tmp );
+                                       "\t= \"%s\"\n", strin, tmp ? tmp : "" );
                        ldap_memfree( tmp );
 
                        tmp = ldap_dn2dcedn( strin );
                        fprintf( stdout, "\nldap_dn2dcedn(\"%s\")\n"
-                                       "\t= \"%s\"\n", strin, tmp );
+                                       "\t= \"%s\"\n", strin, tmp ? tmp : "" );
                        tmp2 = ldap_dcedn2dn( tmp );
                        fprintf( stdout, "\nldap_dcedn2dn(\"%s\")\n"
-                                       "\t= \"%s\"\n", tmp, tmp2 );
+                                       "\t= \"%s\"\n",
+                                       tmp ? tmp : "", tmp2 ? tmp2 : "" );
                        ldap_memfree( tmp );
                        ldap_memfree( tmp2 );
 
                        tmp = ldap_dn2ad_canonical( strin );
                        fprintf( stdout, "\nldap_dn2ad_canonical(\"%s\")\n"
-                                       "\t= \"%s\"\n", strin, tmp );
+                                       "\t= \"%s\"\n", strin, tmp ? tmp : "" );
                        ldap_memfree( tmp );
 
                        fprintf( stdout, "\nldap_explode_dn(\"%s\"):\n", str );
@@ -283,4 +294,3 @@ main( int argc, char *argv[] )
 
        return( 0 );
 }
-