]> git.sur5r.net Git - openldap/blobdiff - libraries/libldap/sort.c
Added the functions ldap_rename2() and ldap_rename2_s() to support LDAP
[openldap] / libraries / libldap / sort.c
index 6738fba022c48b576fccddff005b9e2f0c544fdb..cab92cc7d75759c47e5e31a3339ffde27a0b1ba4 100644 (file)
@@ -1,4 +1,8 @@
 /*
+ * Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved.
+ * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
+ */
+/* Portions
  * Copyright (c) 1994 Regents of the University of Michigan.
  * All rights reserved.
  *
@@ -87,6 +91,18 @@ ldap_sort_entries(
 
        count = ldap_count_entries( ld, *chain );
 
+
+       if ( count < 0 ) {
+               if( ld != NULL ) {
+                       ld->ld_errno = LDAP_PARAM_ERROR;
+               }
+               return -1;
+
+       } else if ( count < 2 ) {
+               /* zero or one entries -- already sorted! */
+               return 0;
+       }
+
        if ( (et = (struct entrything *) malloc( count *
            sizeof(struct entrything) )) == NULL ) {
                ld->ld_errno = LDAP_NO_MEMORY;