]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Only allow ANY for !*
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 11 Dec 2012 16:26:49 +0000 (16:26 +0000)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 11 Dec 2012 16:27:14 +0000 (16:27 +0000)
src/modules/rlm_ldap/rlm_ldap.c

index dd1b6b2fa958d495eb5ec2da70d5cb65aac41dea..ab22b54fc0ba72bfeb96c6427b10b613199ed29a 100644 (file)
@@ -2236,10 +2236,10 @@ static int user_modify(ldap_instance *inst, REQUEST *request,
                {
                        case T_BARE_WORD:
                                if (strcmp(value, "ANY") == 0) {
-                                       if (op != T_OP_SUB) {
+                                       if (op != T_OP_CMP_FALSE) {
                                                radlog(L_ERR, "rlm_ldap (%s): "
                                                       "ANY is only supported "
-                                                      "for delete operations ",
+                                                      "for !* operators",
                                                       inst->xlat_name);
                                                
                                                goto error;     
@@ -2312,6 +2312,9 @@ static int user_modify(ldap_instance *inst, REQUEST *request,
                        case T_OP_SUB:
                                mod_s[total].mod_op = LDAP_MOD_DELETE;
                        break;
+                       case T_OP_CMP_FALSE:
+                               mod_s[total].mod_op = LDAP_MOD_DELETE;
+                       break;
 #ifdef LDAP_MOD_INCREMENT
                        case T_OP_INCRM:
                                mod_s[total].mod_op = LDAP_MOD_INCREMENT;