/*
+ * 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.
* All rights reserved.
*
#include "portable.h"
-#ifndef lint
-static char copyright[] = "@(#) Copyright (c) 1993 Regents of the University of Michigan.\nAll rights reserved.\n";
-#endif
-
#include <stdio.h>
#include <ac/string.h>
#include <ctype.h>
#include <ac/socket.h>
#include <ac/time.h>
-#include "lber.h"
-#include "ldap.h"
-
+#include "ldap-int.h"
#include "ldapconfig.h"
typedef int (*cancelptype) LDAP_P(( void *cancelparm ));
+/* local functions */
static int ldap_ufn_search_ctx LDAP_P(( LDAP *ld, char **ufncomp, int ncomp,
char *prefix, char **attrs, int attrsonly, LDAPMessage **res,
cancelptype cancelproc, void *cancelparm, char *tag1, char *tag2,
static LDAPMessage *ldap_ufn_expand LDAP_P(( LDAP *ld, cancelptype cancelproc,
void *cancelparm, char **dns, char *filter, int scope,
char **attrs, int aonly, int *err ));
-LDAPFiltDesc *ldap_ufn_setfilter LDAP_P(( LDAP *ld, char *fname ));
/*
* ldap_ufn_search_ctx - do user friendly searching; provide cancel feature;
LDAPFiltInfo *fi;
LDAPMessage *tmpcand;
LDAPMessage *candidates;
- LDAPMessage *ldap_msg_merge(), *ldap_ufn_expand();
static char *objattrs[] = { "objectClass", NULL };
/*
if ( (quote = strrchr( ufncomp[ncomp], '"' )) != NULL )
*quote = '\0';
- strcpy( ufncomp[ncomp], ufncomp[ncomp] + 1 );
+ SAFEMEMCPY( ufncomp[ncomp], ufncomp[ncomp] + 1,
+ strlen( ufncomp[ncomp] + 1 ) + 1 );
}
if ( ncomp == 0 )
phase = 3;
* 2 )) == NULL ) {
return( ld->ld_errno = LDAP_NO_MEMORY );
}
- dns[0] = strdup( prefix );
+ dns[0] = ldap_strdup( prefix );
dns[1] = NULL;
} else {
dns = NULL;
if ( ld->ld_ufnprefix != NULL )
free( ld->ld_ufnprefix );
- ld->ld_ufnprefix = strdup( prefix );
+ ld->ld_ufnprefix = ldap_strdup( prefix );
}
int