]> git.sur5r.net Git - openldap/blobdiff - clients/ud/group.c
Don't depend error handling on exact resultCode.
[openldap] / clients / ud / group.c
index d58dd020b82637f1e9147ef4d909d4278944fc17..16a0b6d0fecb41d83446b34f62ef6eaa7a0b2666 100644 (file)
@@ -1,3 +1,8 @@
+/* $OpenLDAP$ */
+/*
+ * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved.
+ * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
+ */
 /*
  * Copyright (c) 1993, 1994  Regents of the University of Michigan.
  * All rights reserved.
@@ -26,7 +31,8 @@
 
 #include <lber.h>
 #include <ldap.h>
-#include <ldapconfig.h>
+
+#include "ldap_defaults.h"
 #include "ud.h"
 
 static char * bind_and_fetch(char *name);
@@ -213,9 +219,9 @@ remove_group( char *name )
        if ((dn = bind_and_fetch(name)) == NULL)
                return;
 
-       printf("\n  The group '%s' will be permanently removed from\n",
-               name);
-       printf("  the Directory.  Are you absolutely sure that you want to\n" );        printf("  remove this entire group? ");
+       printf("\n  The entry\n    '%s'\n  will be permanently removed from", dn);
+       printf(" the Directory.\n  Are you absolutely sure that you want to" );
+       printf(" remove this entire group? ");
        fflush(stdout);
        fetch_buffer(tmp, sizeof(tmp), stdin);
        if (!(tmp[0] == 'y' || tmp[0] == 'Y'))
@@ -228,7 +234,7 @@ remove_group( char *name )
                int ld_errno = 0;
                ldap_get_option(ld, LDAP_OPT_ERROR_NUMBER, &ld_errno);
                if (ld_errno == LDAP_INSUFFICIENT_ACCESS)
-                       printf("  You do not own the group \"%s\".\n", name);
+                       printf("  You do not own the entry\n\t\"%s\".\n", dn);
                else
                        ldap_perror(ld, "  ldap_delete_s");
                printf("  Group not removed.\n");
@@ -237,10 +243,12 @@ remove_group( char *name )
        }
        ldap_uncache_entry(ld, dn);
        if (verbose)
+       {
            if (name == NULL)
                printf("  The group has been removed.\n");
            else
                printf("  The group \"%s\" has been removed.\n", name);
+       }
        Free(dn);
        return;
 }
@@ -1066,7 +1074,7 @@ list_groups( char *who )
 
        /* lookup the groups belonging to this person */
        sprintf(filter, "owner=%s", dn);
-       Free(dn);
+       ldap_memfree(dn);
        search_attrs[0] = "cn";
        search_attrs[1] = NULL;
        if ((rc = ldap_search_s(ld, UD_WHERE_ALL_GROUPS_LIVE, LDAP_SCOPE_SUBTREE, 
@@ -1199,7 +1207,7 @@ list_memberships( char *who )
 
        /* lookup the groups belonging to this person */
        sprintf(filter, "member=%s", dn);
-       Free(dn);
+       ldap_memfree(dn);
        search_attrs[0] = "cn";
        search_attrs[1] = NULL;
        ldap_msgfree(mp);