makeldif
view README @ 38:bb33f9ed186b
fixed AC_DEFINE_DIR syntax in configure
| author | Binki <ohnobinki@ohnopublishing.net> |
|---|---|
| date | Tue, 07 Apr 2009 22:38:49 -0400 |
| parents | ee9c65ad9fcf |
| children |
line source
2 This program reads all pwent and group entries using the getpwent() and getgrent() functions. It parses each record as it reads it. When parsing, it spits out and LDIF record in a hopefully suitable ldif form for importing into an LDAP database like that of openLDAP.
4 Compiling:
6 Because of my inability to use autoconf, you _must_ pass the --prefix=/some/path argument to ./configure. For instance, I believe the default prefix configure comes up with is /usr/local. So you could call configure as follows:
8 If you really trust me and want to install the package into your system using a package manager, you'd use
9 ./configure --prefix=/usr --sysconfdir=/etc
11 Using:
12 Please see the output of makeldif -h. Many of the arguments are required. You can fill you one arg at a time and run makeldif to see which args you might still want to fill out.
14 -rcfile:
15 The rcfile option should have no effect on the operation of makeldif ATM.
17 -kuser support:
18 To make use of kuser-formatted gecos fields, pass the -k option. makeldif will treat gecos fields without 3 commas normally, but ones containing 4 commas should be parsed in the same way kuser parses them. Currently, the email and fullname fields will be extracted and used.
20 Getting Help:
21 Please email me, see the AUTHORS file. In the future, http://ohnopublishing.net/~ohnobinki/makeldif/ may become a useful resource, but I wouldn't get my hopes up if I was myself.
26 We have no shadow support or even support for passwords given us from the getpwent function (which is very unlikely to happen as most people using pwents use shadow). This is because that would require support for writing passwords. I think openLDAP can accept them verbatim in their hashed form - I shall have to see.
28 I want password support because I want to be able to set up users that let mit-krb-1.6.*, samba, postfix log in securely to an ldap server. If I support creating these users through makeldif, the potential laziness factor will be increased. Hopefully this will increase the number of people who successfully set up centralized authentication/directory-based servers.
31 The program only allows the changing of the base name, organization name, and organization description. If anyone wants to write their own schema with a different name than inetorgperson or wants to change the behavior of the program when it chooses to make an inetorgperson or to use another structural class, that person has to post-processing my output. In fact, generating LDIF from get{pw,gr}ent() is probably more easily done with sed programs processing the output of the getent command-line utility.
34 This program should be able to connect directly to an LDAP server and compare the database to the output from the getpwent() function, only synchronizing differences interactively chosen by user or from a rule-set specified. Maybe the ldif output can be more effectively produced using and LDAP library's support for such? Maybe in-program verification of schema compatibility can be made possible from direct interaction with LDAP library.
