summaryrefslogtreecommitdiff
path: root/nslcd/ldap-schema.c
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2007-07-24 13:38:56 +0000
committerArthur de Jong <arthur@arthurdejong.org>2007-07-24 13:38:56 +0000
commitd6f0e2fbfde1a928580cbfdd6845facf2ff1aea2 (patch)
tree2f6fbb9914f283a068672551254eacc9ade34f7b /nslcd/ldap-schema.c
parentfaee906ac541a533b61d1b51aad34fde4f3f8509 (diff)
switch to a new interface for doing attribute mapping, splitting the attribute mapping stuff into a separate file
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-ldapd@326 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'nslcd/ldap-schema.c')
-rw-r--r--nslcd/ldap-schema.c184
1 files changed, 92 insertions, 92 deletions
diff --git a/nslcd/ldap-schema.c b/nslcd/ldap-schema.c
index f7b2839..c354718 100644
--- a/nslcd/ldap-schema.c
+++ b/nslcd/ldap-schema.c
@@ -45,6 +45,7 @@
#include "ldap-nss.h"
#include "ldap-schema.h"
#include "util.h"
+#include "attmap.h"
/* max number of attributes per object class */
#define ATTRTAB_SIZE 15
@@ -119,121 +120,121 @@ _nss_ldap_init_filters ()
{
/* rfc822 mail aliases */
snprintf (_nss_ldap_filt_getaliasbyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (nisMailAlias),
- ATM (LM_ALIASES, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_alias_objectClass,
+ attmap_alias_cn, "%s");
snprintf (_nss_ldap_filt_getaliasent, LDAP_FILT_MAXSIZ,
- "(%s=%s)", AT (objectClass), OC (nisMailAlias));
+ "(%s=%s)", attmap_objectClass, attmap_alias_objectClass);
/* MAC address mappings */
snprintf (_nss_ldap_filt_gethostton, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ieee802Device),
- ATM (LM_ETHERS, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_ether_objectClass,
+ attmap_ether_cn, "%s");
snprintf (_nss_ldap_filt_getntohost, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ieee802Device), AT (macAddress),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_ether_objectClass, attmap_ether_macAddress,
"%s");
snprintf (_nss_ldap_filt_getetherent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (ieee802Device));
+ attmap_objectClass, attmap_ether_objectClass);
/* groups */
snprintf (_nss_ldap_filt_getgrnam, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (posixGroup),
- ATM (LM_GROUP, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_group_objectClass,
+ attmap_group_cn, "%s");
snprintf (_nss_ldap_filt_getgrgid, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (posixGroup),
- ATM (LM_GROUP, gidNumber), "%d");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_group_objectClass,
+ attmap_group_gidNumber, "%d");
snprintf (_nss_ldap_filt_getgrent, LDAP_FILT_MAXSIZ, "(&(%s=%s))",
- AT (objectClass), OC (posixGroup));
+ attmap_objectClass, attmap_group_objectClass);
snprintf (_nss_ldap_filt_getgroupsbymemberanddn, LDAP_FILT_MAXSIZ,
"(&(%s=%s)(|(%s=%s)(%s=%s)))",
- AT (objectClass), OC (posixGroup), AT (memberUid), "%s", AT (uniqueMember), "%s");
+ attmap_objectClass, attmap_group_objectClass, attmap_group_memberUid, "%s", attmap_group_uniqueMember, "%s");
snprintf (_nss_ldap_filt_getgroupsbydn, LDAP_FILT_MAXSIZ,
"(&(%s=%s)(%s=%s))",
- AT (objectClass), OC (posixGroup), AT (uniqueMember), "%s");
+ attmap_objectClass, attmap_group_objectClass, attmap_group_uniqueMember, "%s");
snprintf (_nss_ldap_filt_getpwnam_groupsbymember, LDAP_FILT_MAXSIZ,
"(|(&(%s=%s)(%s=%s))(&(%s=%s)(%s=%s)))",
- AT (objectClass), OC (posixGroup), AT (memberUid), "%s",
- AT (objectClass), OC (posixAccount), ATM (LM_PASSWD, uid), "%s");
+ attmap_objectClass, attmap_group_objectClass, attmap_group_memberUid, "%s",
+ attmap_objectClass, attmap_passwd_objectClass, attmap_passwd_uid, "%s");
snprintf (_nss_ldap_filt_getgroupsbymember, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (posixGroup), AT (memberUid),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_group_objectClass, attmap_group_memberUid,
"%s");
/* IP hosts */
snprintf (_nss_ldap_filt_gethostbyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipHost), ATM (LM_HOSTS, cn),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_host_objectClass, attmap_host_cn,
"%s");
snprintf (_nss_ldap_filt_gethostbyaddr, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipHost), AT (ipHostNumber),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_host_objectClass, attmap_host_ipHostNumber,
"%s");
snprintf (_nss_ldap_filt_gethostent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (ipHost));
+ attmap_objectClass, attmap_host_objectClass);
/* IP networks */
snprintf (_nss_ldap_filt_getnetbyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipNetwork),
- ATM (LM_NETWORKS, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_network_objectClass,
+ attmap_network_cn, "%s");
snprintf (_nss_ldap_filt_getnetbyaddr, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipNetwork),
- AT (ipNetworkNumber), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_network_objectClass,
+ attmap_network_ipNetworkNumber, "%s");
snprintf (_nss_ldap_filt_getnetent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (ipNetwork));
+ attmap_objectClass, attmap_network_objectClass);
/* IP protocols */
snprintf (_nss_ldap_filt_getprotobyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipProtocol),
- ATM (LM_PROTOCOLS, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_protocol_objectClass,
+ attmap_protocol_cn, "%s");
snprintf (_nss_ldap_filt_getprotobynumber, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipProtocol),
- AT (ipProtocolNumber), "%d");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_protocol_objectClass,
+ attmap_protocol_ipProtocolNumber, "%d");
snprintf (_nss_ldap_filt_getprotoent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (ipProtocol));
+ attmap_objectClass, attmap_protocol_objectClass);
/* users */
snprintf (_nss_ldap_filt_getpwnam, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (posixAccount),
- ATM (LM_PASSWD, uid), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_passwd_objectClass,
+ attmap_passwd_uid, "%s");
snprintf (_nss_ldap_filt_getpwuid, LDAP_FILT_MAXSIZ,
"(&(%s=%s)(%s=%s))",
- AT (objectClass), OC (posixAccount), AT (uidNumber), "%d");
+ attmap_objectClass, attmap_passwd_objectClass, attmap_passwd_uidNumber, "%d");
snprintf (_nss_ldap_filt_getpwent, LDAP_FILT_MAXSIZ,
- "(%s=%s)", AT (objectClass), OC (posixAccount));
+ "(%s=%s)", attmap_objectClass, attmap_passwd_objectClass);
/* RPCs */
snprintf (_nss_ldap_filt_getrpcbyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (oncRpc), ATM (LM_RPC, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_rpc_objectClass, attmap_rpc_cn, "%s");
snprintf (_nss_ldap_filt_getrpcbynumber, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (oncRpc), AT (oncRpcNumber),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_rpc_objectClass, attmap_rpc_oncRpcNumber,
"%d");
snprintf (_nss_ldap_filt_getrpcent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (oncRpc));
+ attmap_objectClass, attmap_rpc_objectClass);
/* IP services */
snprintf (_nss_ldap_filt_getservbyname, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipService), ATM (LM_SERVICES, cn),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_service_objectClass, attmap_service_cn,
"%s");
snprintf (_nss_ldap_filt_getservbynameproto, LDAP_FILT_MAXSIZ,
"(&(%s=%s)(%s=%s)(%s=%s))",
- AT (objectClass), OC (ipService), ATM (LM_SERVICES, cn), "%s", AT (ipServiceProtocol),
+ attmap_objectClass, attmap_service_objectClass, attmap_service_cn, "%s", attmap_service_ipServiceProtocol,
"%s");
snprintf (_nss_ldap_filt_getservbyport, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (ipService), AT (ipServicePort),
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_service_objectClass, attmap_service_ipServicePort,
"%d");
snprintf (_nss_ldap_filt_getservbyportproto, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s)(%s=%s))", AT (objectClass), OC (ipService),
- AT (ipServicePort), "%d", AT (ipServiceProtocol), "%s");
+ "(&(%s=%s)(%s=%s)(%s=%s))", attmap_objectClass, attmap_service_objectClass,
+ attmap_service_ipServicePort, "%d", attmap_service_ipServiceProtocol, "%s");
snprintf (_nss_ldap_filt_getservent, LDAP_FILT_MAXSIZ, "(%s=%s)",
- AT (objectClass), OC (ipService));
+ attmap_objectClass, attmap_service_objectClass);
/* shadow users */
snprintf (_nss_ldap_filt_getspnam, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (shadowAccount),
- ATM (LM_SHADOW, uid), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_shadow_objectClass,
+ attmap_shadow_uid, "%s");
snprintf (_nss_ldap_filt_getspent, LDAP_FILT_MAXSIZ,
- "(%s=%s)", AT (objectClass), OC (shadowAccount));
+ "(%s=%s)", attmap_objectClass, attmap_shadow_objectClass);
/* netgroups */
snprintf (_nss_ldap_filt_getnetgrent, LDAP_FILT_MAXSIZ,
- "(&(%s=%s)(%s=%s))", AT (objectClass), OC (nisNetgroup),
- ATM (LM_NETGROUP, cn), "%s");
+ "(&(%s=%s)(%s=%s))", attmap_objectClass, attmap_netgroup_objectClass,
+ attmap_netgroup_cn, "%s");
}
@@ -245,16 +246,16 @@ init_pwd_attributes (const char ***pwd_attrs)
(*pwd_attrs) = __pwd_attrs;
- (*pwd_attrs)[i++] = ATM (LM_PASSWD, uid);
- (*pwd_attrs)[i++] = ATM (LM_PASSWD, userPassword);
- (*pwd_attrs)[i++] = AT (uidNumber);
- (*pwd_attrs)[i++] = ATM (LM_PASSWD, gidNumber);
- (*pwd_attrs)[i++] = ATM (LM_PASSWD, cn);
- (*pwd_attrs)[i++] = AT (homeDirectory);
- (*pwd_attrs)[i++] = AT (loginShell);
- (*pwd_attrs)[i++] = AT (gecos);
- (*pwd_attrs)[i++] = ATM (LM_PASSWD, description);
- (*pwd_attrs)[i++] = AT (objectClass);
+ (*pwd_attrs)[i++] = attmap_passwd_uid;
+ (*pwd_attrs)[i++] = attmap_passwd_userPassword;
+ (*pwd_attrs)[i++] = attmap_passwd_uidNumber;
+ (*pwd_attrs)[i++] = attmap_passwd_gidNumber;
+ (*pwd_attrs)[i++] = attmap_passwd_cn;
+ (*pwd_attrs)[i++] = attmap_passwd_homeDirectory;
+ (*pwd_attrs)[i++] = attmap_passwd_loginShell;
+ (*pwd_attrs)[i++] = attmap_passwd_gecos;
+ (*pwd_attrs)[i++] = "description";
+ (*pwd_attrs)[i++] = attmap_objectClass;
(*pwd_attrs)[i] = NULL;
}
@@ -265,15 +266,15 @@ init_sp_attributes (const char ***sp_attrs)
(*sp_attrs) = __sp_attrs;
- (*sp_attrs)[0] = ATM (LM_SHADOW, uid);
- (*sp_attrs)[1] = ATM (LM_SHADOW, userPassword);
- (*sp_attrs)[2] = AT (shadowLastChange);
- (*sp_attrs)[3] = AT (shadowMax);
- (*sp_attrs)[4] = AT (shadowMin);
- (*sp_attrs)[5] = AT (shadowWarning);
- (*sp_attrs)[6] = AT (shadowInactive);
- (*sp_attrs)[7] = AT (shadowExpire);
- (*sp_attrs)[8] = AT (shadowFlag);
+ (*sp_attrs)[0] = attmap_shadow_uid;
+ (*sp_attrs)[1] = attmap_shadow_userPassword;
+ (*sp_attrs)[2] = attmap_shadow_shadowLastChange;
+ (*sp_attrs)[3] = attmap_shadow_shadowMax;
+ (*sp_attrs)[4] = attmap_shadow_shadowMin;
+ (*sp_attrs)[5] = attmap_shadow_shadowWarning;
+ (*sp_attrs)[6] = attmap_shadow_shadowInactive;
+ (*sp_attrs)[7] = attmap_shadow_shadowExpire;
+ (*sp_attrs)[8] = attmap_shadow_shadowFlag;
(*sp_attrs)[9] = NULL;
}
@@ -285,12 +286,12 @@ init_grp_attributes (const char ***grp_attrs)
(*grp_attrs) = __grp_attrs;
- (*grp_attrs)[i++] = ATM (LM_GROUP, cn);
- (*grp_attrs)[i++] = ATM (LM_GROUP, userPassword);
- (*grp_attrs)[i++] = AT (memberUid);
+ (*grp_attrs)[i++] = attmap_group_cn;
+ (*grp_attrs)[i++] = attmap_group_userPassword;
+ (*grp_attrs)[i++] = attmap_group_memberUid;
if (_nss_ldap_test_config_flag (NSS_LDAP_FLAGS_RFC2307BIS))
- (*grp_attrs)[i++] = AT (uniqueMember);
- (*grp_attrs)[i++] = ATM (LM_GROUP, gidNumber);
+ (*grp_attrs)[i++] = attmap_group_uniqueMember;
+ (*grp_attrs)[i++] = attmap_group_gidNumber;
(*grp_attrs)[i] = NULL;
}
@@ -301,8 +302,8 @@ init_hosts_attributes (const char ***hosts_attrs)
(*hosts_attrs) = __hosts_attrs;
- (*hosts_attrs)[0] = ATM (LM_HOSTS, cn);
- (*hosts_attrs)[1] = AT (ipHostNumber);
+ (*hosts_attrs)[0] = attmap_host_cn;
+ (*hosts_attrs)[1] = attmap_host_ipHostNumber;
(*hosts_attrs)[2] = NULL;
}
@@ -313,9 +314,9 @@ init_services_attributes (const char ***services_attrs)
(*services_attrs) = __services_attrs;
- (*services_attrs)[0] = ATM (LM_SERVICES, cn);
- (*services_attrs)[1] = AT (ipServicePort);
- (*services_attrs)[2] = AT (ipServiceProtocol);
+ (*services_attrs)[0] = attmap_service_cn;
+ (*services_attrs)[1] = attmap_service_ipServicePort;
+ (*services_attrs)[2] = attmap_service_ipServiceProtocol;
(*services_attrs)[3] = NULL;
}
@@ -326,10 +327,9 @@ init_network_attributes (const char ***network_attrs)
(*network_attrs) = __network_attrs;
- (*network_attrs)[0] = ATM (LM_NETWORKS, cn);
- (*network_attrs)[1] = AT (ipNetworkNumber);
- (*network_attrs)[2] = AT (ipNetmaskNumber);
- (*network_attrs)[3] = NULL;
+ (*network_attrs)[0] = attmap_network_cn;
+ (*network_attrs)[1] = attmap_network_ipNetworkNumber;
+ (*network_attrs)[2] = NULL;
}
static void
@@ -339,8 +339,8 @@ init_proto_attributes (const char ***proto_attrs)
(*proto_attrs) = __proto_attrs;
- (*proto_attrs)[0] = ATM (LM_PROTOCOLS, cn);
- (*proto_attrs)[1] = AT (ipProtocolNumber);
+ (*proto_attrs)[0] = attmap_protocol_cn;
+ (*proto_attrs)[1] = attmap_protocol_ipProtocolNumber;
(*proto_attrs)[2] = NULL;
}
@@ -351,8 +351,8 @@ init_rpc_attributes (const char ***rpc_attrs)
(*rpc_attrs) = __rpc_attrs;
- (*rpc_attrs)[0] = ATM (LM_RPC, cn);
- (*rpc_attrs)[1] = AT (oncRpcNumber);
+ (*rpc_attrs)[0] = attmap_rpc_cn;
+ (*rpc_attrs)[1] = attmap_rpc_oncRpcNumber;
(*rpc_attrs)[2] = NULL;
}
@@ -363,8 +363,8 @@ init_ethers_attributes (const char ***ethers_attrs)
(*ethers_attrs) = __ethers_attrs;
- (*ethers_attrs)[0] = ATM (LM_ETHERS, cn);
- (*ethers_attrs)[1] = AT (macAddress);
+ (*ethers_attrs)[0] = attmap_ether_cn;
+ (*ethers_attrs)[1] = attmap_ether_macAddress;
(*ethers_attrs)[2] = NULL;
}
@@ -375,8 +375,8 @@ init_alias_attributes (const char ***alias_attrs)
(*alias_attrs) = __alias_attrs;
- (*alias_attrs)[0] = ATM (LM_ALIASES, cn);
- (*alias_attrs)[1] = AT (rfc822MailMember);
+ (*alias_attrs)[0] = attmap_alias_cn;
+ (*alias_attrs)[1] = attmap_alias_rfc822MailMember;
(*alias_attrs)[2] = NULL;
}
@@ -387,9 +387,9 @@ init_netgrp_attributes (const char ***netgrp_attrs)
(*netgrp_attrs) = __netgrp_attrs;
- (*netgrp_attrs)[0] = ATM (LM_NETGROUP, cn);
- (*netgrp_attrs)[1] = AT (nisNetgroupTriple);
- (*netgrp_attrs)[2] = AT (memberNisNetgroup);
+ (*netgrp_attrs)[0] = attmap_netgroup_cn;
+ (*netgrp_attrs)[1] = attmap_netgroup_nisNetgroupTriple;
+ (*netgrp_attrs)[2] = attmap_netgroup_memberNisNetgroup;
(*netgrp_attrs)[3] = NULL;
}