Browse Source

Add feature to handle unset (default) configuration options in GETCONF control messages

svn:r4461
Nick Mathewson 20 years ago
parent
commit
eb327e7660
2 changed files with 7 additions and 2 deletions
  1. 1 1
      contrib/TorControl.py
  2. 6 1
      src/or/control.c

+ 1 - 1
contrib/TorControl.py

@@ -433,7 +433,7 @@ def do_main_loop(host,port):
                            (".", "abacinator.onion")])`
     print `extend_circuit(s,0,["moria1"])`
     print '========'
-    print `extend_circuit(s,0,[""])`
+    #print `extend_circuit(s,0,[""])`
     print '========'
     #send_signal(s,1)
     #save_conf(s)

+ 6 - 1
src/or/control.c

@@ -693,7 +693,12 @@ handle_control_getconf(connection_t *conn, uint32_t body_len, const char *body)
       }
     } else {
       struct config_line_t *answer = config_get_assigned_option(options,q);
-      /* XXXX handle non-set options in V1 at least*/
+      if (!v0 && !answer) {
+        size_t alen = strlen(q)+8;
+        char *astr = tor_malloc(alen);
+        tor_snprintf(astr, alen, "250-%s\r\n", q);
+        smartlist_add(answers, astr);
+      }
 
       while (answer) {
         struct config_line_t *next;