<!-- Lock file for exclusive exec to prevent overlapped rule number -->\r
<LockFile>/tmp/opengate.lock</LockFile>\r
\r
+ <!-- Separate char between userID and extraID [userID@extraID] -->\r
+ <UserIdSeparator>@</UserIdSeparator>\r
+\r
<!-- ########################################################## \r
- #### ExtraSet settings overlayed on previous settings ####\r
+ #### ExtraSet overwritten on default settings ####\r
\r
If you want to switch parameter values\r
by userID and extraID entered as [userID@extraID],\r
\r
If entered as [userID], above default parameters are used.\r
If entered as [iserID@extraID] and matched set exists,\r
- the paremeters in the set is overlayed the above.\r
+ the paremeters in the set is overwriten on the above default.\r
+ The first matched extra set is used.\r
\r
Examples:\r
First ExtraSet is used when user entered as [anyuser@guest],\r
UserIdPattern is the "POSIX Extended Regular Expression".\r
Matching is insensitive to upper/lower case.\r
\r
- Word "default" is set to extraID, when no extraID is entered.\r
+ Word "default" is set to extraID, when extraID is not entered.\r
####################################################### -->\r
\r
<!--\r
<Max>1200</Max>\r
</Duration>\r
</ExtraSet>\r
-\r
+-->\r
+<!--\r
<ExtraSet ExtraId="admin">\r
<AuthServer>\r
<Protocol>pam</Protocol>\r
</AuthServer>\r
</ExtraSet>\r
-\r
+-->\r
+<!--\r
<ExtraSet ExtraId="default" UserIdPattern="^user1$|^user2$"> \r
<Syslog>\r
<Enable>1</Enable>\r
strncpy(useridSave, userid, USERMAXLN);
/* separate extraId from userid */
- markPnt=strchr(useridSave, ATMARK);
+ markPnt=strchr(useridSave, *GetConfValue("UserIdSeparator"));
if(markPnt==NULL){
/* separator mark not found */
strncpy(extraId,"default",USERMAXLN);
/* init as no ExtraSet */
xmlExtraSet=NULL;
- if(extraId[0]=='\0') return;
+ if(isNull(extraId)) return;
/* search the matching extra set (first match is employed) */
for(xml=ezxml_child(xmlRoot, "ExtraSet"); xml; xml=xml->next){
#define PAMSERVICENAME "opengate" /* default service name used in PAM */
#define RADIUSCONF "/etc/radius.conf" /* default path to radius.conf */
-#define ATMARK '@' /* separator between userID and extraID */
- /* in user entry [userID@extraID] */
#define ADDRMAXLN 128 /* maximum address string length */
#define PASSMAXLN 128 /* maximum password string length */