Commit Graph

297 Commits

Author SHA1 Message Date
Kurt Zeilenga
3f6e23cb0c Add LDAPv3 rename support 2000-06-29 19:35:51 +00:00
Kurt Zeilenga
51bacc2c99 Do not include <lber.h> 2000-06-26 01:24:03 +00:00
Kurt Zeilenga
e2fa599482 Move old files to the Attic 2000-06-25 22:01:42 +00:00
Kurt Zeilenga
1a862732ee Fail if ldap_set_option fails 2000-06-25 18:17:47 +00:00
Kurt Zeilenga
bf9231ac40 Round 2 of tools work.
-R now ignored
-C added to chase.  No rebind proc yet, no checking of appropriate authentication.
complain if non-critical TLS was not started.
Fail if requested version is not supported.
ldapdelete:
  deletechildren modified to use ldap_search_ext_s()
  fixed deletechildren dn memory leak
ldapsearch:
  modified to use ldap_search_ext()
2000-06-25 18:07:15 +00:00
Kurt Zeilenga
5f20cf1ed5 Modify ldapsearch(1) significantly. Now handles LDAPv3 search
references, extended results, and extended partial results.  LDIF
extended to support these new features and reported version 2.
-L now limits output to LDIFv1 for compatibility reasons.  No
-L is now LDIFv2.  Old alternative form is no longer supported.

Use LDAP_TMPDIR (in ldap_config.h) instead of hardcoded /tmp
Use LDAP_FILE_URI_PREFIX (in ldap_config.h) instead of hardcoded
	file://tmp/
2000-06-25 00:35:17 +00:00
Kurt Zeilenga
49f4147385 Added -llber 'N' ber_printf format which inserts a NULL if
an internal flag set.  Used for SEQUENCE testing.  Flag must
be set using debugger.  Modified ber_printf to use new format
were needed for extensibility testing.

Added first cut -lldap support for extended responses.
Modified ldapsearch(1) to handle v3 search references when not
chasing.  Also added extended/unsolicited notification handling
and extended partial response handling.  Changes include a
number of LDIF enhancements.

Fixed getpassphrase() returns NULL bugs
2000-06-24 01:40:39 +00:00
Kurt Zeilenga
f48234f5bf No need to include <lber.h> 2000-06-20 17:02:19 +00:00
Kurt Zeilenga
e7791e2f93 Adjust -Z[Z] usage statements
Change ldapsearch to only produce LDIF.
2000-06-19 16:19:59 +00:00
Kurt Zeilenga
9ef1a740c2 Round one of LDAP_F() macro changes. In this round we rename
macros into our namespace and limit use to headers.  A subsequent
round will add macros to separately handle forward declarations
of variables from declaration of function prototypes.  The last
round will add additional macros for declaring actual variables and
functions.
2000-06-18 19:48:07 +00:00
Kurt Zeilenga
701cc91e8d Fix getpassword bug 2000-06-14 03:07:33 +00:00
Kurt Zeilenga
5417fdfea7 Rename ldap_start_tls() to ldap_start_tls_s() for consistency sake.
Misc other header changes.
2000-06-13 20:45:30 +00:00
Kurt Zeilenga
a56c161bdb Misc code cleanup. 2000-06-10 22:39:30 +00:00
Kurt Zeilenga
40b71cd8e8 undef DEFSEP before defining it 2000-06-10 07:19:07 +00:00
Julio Sánchez Fernández
05d1caad05 Added maildap. 2000-06-09 00:45:59 +00:00
Julio Sánchez Fernández
13e263d895 A few name changes. 2000-06-09 00:43:24 +00:00
Julio Sánchez Fernández
927d58171b The experimental mail500 has been renamed as maildap. This is an exact
copy of the code formerly in mail500, to properly track changes.  An
exception is mail500.m4 that has been committed as maildap.m4 directly
to avoid breaking history twice.
2000-06-09 00:03:39 +00:00
Julio Sánchez Fernández
8d6fffc9ba The old mail500 is back restored as of 1999/06/30, plus a few updates
to put it in line with current practices.  Most likely I got them wrong,
so maight not even compile right now.
2000-06-08 23:58:19 +00:00
Kurt Zeilenga
e5ebc553ac Rework URI parser to provide true scheme not proto/properties.
Plus more pthread rwlock code
2000-06-07 01:09:40 +00:00
Kurt Zeilenga
51e619d424 Add ManageDSAit support to back-dnssrv
Fix backend critical controls crash
Move 'associatedDomain' to core.schema
2000-06-05 03:10:46 +00:00
Kurt Zeilenga
ea069cb7c2 New indexer/filter codes (test suite works) with cheats
Updated NT Project files (with Cyrus SASL library depend)
2000-06-04 22:59:38 +00:00
Kurt Zeilenga
781a8e2afc Use ldap_parse_result instead of deprecated ldap_result2error 2000-06-03 16:28:47 +00:00
Kurt Zeilenga
34edec3107 Strip installed executables
better library clean
2000-05-30 18:23:56 +00:00
Kurt Zeilenga
dfc850ceb3 Force referrals on 2000-05-29 20:43:29 +00:00
Kurt Zeilenga
8045b54124 Use getpassphrase() instead of getpass() if available. 2000-05-19 18:41:26 +00:00
Kurt Zeilenga
c923fe5401 s/bindpw/passwd/ 2000-05-16 05:08:25 +00:00
Kurt Zeilenga
9267700fb9 Fix password handling for SASL 2000-05-16 02:16:54 +00:00
Kurt Zeilenga
ebfe58344c Fix sasl passwd handling (needs to be copied to other tools) 2000-05-16 01:45:15 +00:00
Kurt Zeilenga
0bb431d3b3 Y2k copyright update 2000-05-13 02:25:54 +00:00
Howard Chu
3ea2de7a86 Fix off-by-one in allocation of urlpre 2000-05-11 21:21:18 +00:00
Kurt Zeilenga
643864c569 Change negotiated mechanism:
If application provide one, use it.  If application doesn't
	provide one, use best of server advertised.
Fix SASL/ANONYMOUS (not normally used, but should work)
PLAIN is not currently working... might be local to me as my
Cyrus installation is a bit hosted.
2000-05-11 20:16:26 +00:00
Kurt Zeilenga
d25f52be38 s/cmds/rcpt_cmds/ to avoid conflict with Linux Redhat "prandom". 2000-05-09 17:25:59 +00:00
Kurt Zeilenga
0d1e76246a Don't depend error handling on exact resultCode. 2000-04-26 09:21:19 +00:00
Kurt Zeilenga
fe8be04237 Fix typos in version checking 2000-04-25 10:30:42 +00:00
Ben Collins
50a41f3ee2 when opening files in /tmp use O_CREAT|O_EXCL to overcome race conditions 2000-04-24 16:42:16 +00:00
Ben Collins
97493c3404 with the -t option (writing to /tmp) open files with O_CREAT|O_EXCL to overcome race conditions 2000-04-24 16:41:36 +00:00
Kurt Zeilenga
4ecf780e48 StartTLS requires LDAPv3
Set version to required protocol.
2000-04-20 14:15:39 +00:00
Kurt Zeilenga
c02d7e2cb6 ITS#503: Extend ldap tools to support SASL/TLS
Submitted by Gabor Gombas <gombasg@inf.elte.hu>
2000-04-20 09:23:51 +00:00
Kurt Zeilenga
72c0de5d95 #define LDAP_LDIF to default to LDIF input
Fix ldaphost == NULL bug
2000-04-12 01:03:51 +00:00
Kurt Zeilenga
6b4aac2678 #define LDAP_LDIF to default to LDIF output 2000-04-12 01:02:58 +00:00
Kurt Zeilenga
870dbca576 objectclass=* -> NULL 2000-04-12 01:00:48 +00:00
Julio Sánchez Fernández
0dbd442090 Checking uninitialized variables.
Add addresses optimization to rfc822-ext too.
2000-04-10 12:11:20 +00:00
Julio Sánchez Fernández
36a4ed4f59 Added a method to make delivery to the local mailbox conditional on
the presence of a certain value in some other attribute.  Used to
implement mailForwardingAddress both in addition to normal delivery
and excluding normal delivery, selectable entry by entry.  The model
is mailDeliveryOption in Netscape MS.  The implementation aims to
become more general, though.  Affects "search-with-filter", any
entry can potentially use a parameter, introduced with "param=".

Optimize the case where we have to copy the message to an address that
is served by the directory.  Formerly, we would have the MTA deal with
it and invoke mail500 again later.  This has necessitated loading the
list of domains that are solved by us with "domain".  A new definition,
"host", takes the role of the old "domain" that was the FQDN of our
host for routing loop avoidance.
2000-04-07 15:00:22 +00:00
Julio Sánchez Fernández
8d6808862f The old mail500 had a method to try to translate the local address
part into something to check against the cn of entries.  It is
supported again thorugh the selector %s in the search.
Explicitly initialize some pointers in automatic storage.
2000-04-06 16:16:46 +00:00
Julio Sánchez Fernández
4cf241aa69 Added support for doing routing at the MTA, that is the right thing
anyway.  A new syntax is defined, "present", that indicates that
values of an attribute type are not used, only presence is
significant.  To do routing at the MTA, define both mailHost and
mailRoutingAddress with syntax "present".  Otherwise, use "host" and
"rfc822" and mail500 will try to do routing by itself, if possible.
Read the comments in the code for the ugly details.
Added a new configuration line "own-address" that describes the FQDN of
our host to compare with mailHost.  The line can be repeated.
2000-04-05 19:15:33 +00:00
Julio Sánchez Fernández
88e1ffcde1 The approach used was not powerfull enough to deal with things like
nested groups or the laser mail routing draft.  Mostly, this is
because a flag saying the attribute type is 'final' is not flexible
enough.  The old 'final' flag is gone and replaced by a priority
level.

Change 'forward' to 'route' to be consistent with the laser wording.

Add new 'domain' spec in the configuration file to describe what are
the local domains so that we do not loop when doing the laser thing.

We were escaping asterisks in filters.  This seems incorrect.  Removed.
2000-03-23 16:19:01 +00:00
Kurt Zeilenga
3d4122962f Add print.c to handle GeneralizedTime.
Add creat* modify* attributes
2000-01-17 17:41:11 +00:00
Kurt Zeilenga
6437785a82 Initial implementation of Kerberos password verification for
simple bind via:
	{KERBEROS}principal
Code is disabled by default (for security reasons).  Use
--enable-kpasswd to enable.  Behind SLAPD_KPASSWD.
Reworked Kerberos detection and split out KBIND as independent
feature (--disable-kbind) (LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND).
KBIND depends upon detection of KRB4 (or KRB425) support.  Detection,
building with eBones (as distributed with FreeBSD 3.4) okay, but
wasn't able to test as I don't have a K4 KDC handy.
--with-kerberos has a number of detection options... most likely
don't work properly.
2000-01-08 18:42:11 +00:00
Julio Sánchez Fernández
7b2f498415 Fix the prior fix. 1999-12-15 19:10:08 +00:00
Julio Sánchez Fernández
d660a5cc93 The group list was being managed as an array of Group. This was
extremely broken and I can only wonder how I got some much mileage out
of it.  The problem is that we deal with pointers to the groups
themselves, either in current_group or current_to and current_nto.
These pointers would break on reallocs.  So now the the basic togroups
is an array to pointers to Group.  Since the array can be resized at
any time, what we actually pass around is pointer to an array of
pointers to Group or Group ***.
1999-12-15 18:55:19 +00:00