Code

Fix check_ldap overriding the port when --ssl was specified after -p
[nagiosplug.git] / plugins / check_ldap.c
index b933ff280666b17f55515dc877ec232982ce2424..726ffa64ff63f229dad8a5639edddf1aa5ecbe51 100644 (file)
@@ -58,7 +58,7 @@ char *ld_host = NULL;
 char *ld_base = NULL;
 char *ld_passwd = NULL;
 char *ld_binddn = NULL;
-int ld_port = DEFAULT_PORT;
+int ld_port = -1;
 #ifdef HAVE_LDAP_SET_OPTION
 int ld_protocol = DEFAULT_PROTOCOL;
 #endif
@@ -341,7 +341,8 @@ process_arguments (int argc, char **argv)
                case 'S':
                        if (! starttls) {
                                ssl_on_connect = TRUE;
-                               ld_port = LDAPS_PORT;
+                               if (ld_port == -1)
+                                       ld_port = LDAPS_PORT;
                        } else
                                usage_va(_("%s cannot be combined with %s"), "-S/--ssl", "-T/--starttls");
                        break;
@@ -364,6 +365,9 @@ process_arguments (int argc, char **argv)
        if (ld_base == NULL && argv[c])
                ld_base = strdup (argv[c++]);
 
+       if (ld_port == -1)
+               ld_port = DEFAULT_PORT;
+
        return validate_arguments ();
 }