[Fedora-directory-commits] adminutil/lib/libadminutil dllVersionInfo.rc, 1.1.1.1, 1.2 srvutil.c, 1.1.1.1, 1.2
Noriko Hosoi (nhosoi)
fedora-directory-commits at redhat.com
Wed Nov 16 18:50:17 UTC 2005
Author: nhosoi
Update of /cvs/dirsec/adminutil/lib/libadminutil
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv856/lib/libadminutil
Modified Files:
dllVersionInfo.rc srvutil.c
Log Message:
Index: dllVersionInfo.rc
===================================================================
RCS file: /cvs/dirsec/adminutil/lib/libadminutil/dllVersionInfo.rc,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- dllVersionInfo.rc 20 Jul 2005 22:51:32 -0000 1.1.1.1
+++ dllVersionInfo.rc 16 Nov 2005 18:50:15 -0000 1.2
@@ -50,7 +50,7 @@
VALUE "InternalName", INTERNAL_NAME "\0"
VALUE "LegalCopyright", VI_COPYRIGHT "\0"
VALUE "OriginalFilename", INTERNAL_NAME ".dll\0"
- VALUE "ProductName", "Fedora Administration Server\0"
+ VALUE "ProductName", "Administration Server\0"
VALUE "ProductVersion", ADMSDK_VERSION "\0"
END
END
Index: srvutil.c
===================================================================
RCS file: /cvs/dirsec/adminutil/lib/libadminutil/srvutil.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -r1.1.1.1 -r1.2
--- srvutil.c 20 Jul 2005 22:51:32 -0000 1.1.1.1
+++ srvutil.c 16 Nov 2005 18:50:15 -0000 1.2
@@ -30,23 +30,37 @@
PR_IMPLEMENT(AttrNameList)
getServerDNList(AdmldapInfo info)
{
- char *domainDN, *isie, *sie;
+ char *domainDN = NULL, *isie = NULL, *sie = NULL;
+ char *ptr = NULL, *adminName = NULL;
PsetHndl domainPset;
int errorCode;
ListNodePtr dnList=NULL, node=NULL;
AttrNameList nl;
isie = admldapGetISIEDN(info);
- domainDN=strchr(isie, ',');
- if (!domainDN) return NULL;
+ /*
+ * ISIE sample:
+ * isie: cn=<NAME> Administration Server, cn=Server Group, cn=myhost.example.com, ou=example.com, o=NetscapeRoot
+ */
+ ptr = strchr(isie, ',');
+ if (!ptr) goto err;
+
+ *ptr = '\0'; /* to cut out "<NAME> Administration Server" later */
sie = admldapGetSIEDN(info);
- domainDN++;
+ ptr++;
- while (*domainDN == ' ' && *domainDN != '\0') domainDN++;
+ while (*ptr == ' ' && *ptr != '\0') ptr++;
- if (*domainDN == '\0') return NULL;
+ if (*ptr == '\0') goto err;
+
+ domainDN = PL_strdup(ptr);
+ if (!domainDN) goto err;
+
+ adminName = strchr(isie, '=');
+ if (!adminName) goto err;
+ adminName++;
/* Use domainDN to create a pset */
domainPset = psetRealCreate(admldapGetHost(info),
@@ -57,16 +71,23 @@
NULL,
&errorCode);
- if (!domainPset) return NULL;
+ if (!domainPset) goto err;
- nl = retrieveSIEs(domainPset, domainDN);
+ nl = retrieveSIEs(domainPset, domainDN, adminName);
- psetDelete(domainPset);
+ psetDelete(domainPset); /* free sie, domainDN, internally */
+ if (isie) PR_Free(isie);
return nl;
+
+err:
+ if (isie) PR_Free(isie);
+ if (sie) PR_Free(sie);
+ if (domainDN) PR_Free(domainDN);
+ return NULL;
}
PR_IMPLEMENT(AttrNameList)
-retrieveSIEs(PsetHndl domainPset, char* domainDN)
+retrieveSIEs(PsetHndl domainPset, char* domainDN, char *adminName)
{
char *sieDN = NULL, *name, *sieName, *attrName;
int errorCode, i, isieLen;
@@ -78,7 +99,7 @@
nl = childrenList;
while (name = *nl++) {
- if (strcasecmp(name, "Fedora Administration Server")) {
+ if (strcasecmp(name, adminName)) {
sieList = psetGetChildren(domainPset, name, &errorCode);
nl1 = sieList;
isieLen = PL_strlen(name);
More information about the Fedora-directory-commits
mailing list