Browse Source

Tweak GETINFO process/* code: no need to print an int as anything other than %d

Nick Mathewson 13 years ago
parent
commit
1e295666d9
2 changed files with 8 additions and 3 deletions
  1. 3 0
      changes/getinfo_process
  2. 5 3
      src/or/control.c

+ 3 - 0
changes/getinfo_process

@@ -0,0 +1,3 @@
+  o Minor features
+    - Implement some GETINFO controller fields to provide information about
+      the Tor process's pid, euid, username, and resource limits.

+ 5 - 3
src/or/control.c

@@ -1359,13 +1359,13 @@ getinfo_helper_misc(control_connection_t *conn, const char *question,
       myPid = getpid();
     #endif
 
-    tor_asprintf(answer, U64_FORMAT, U64_PRINTF_ARG(myPid));
+    tor_asprintf(answer, "%d", myPid);
   } else if (!strcmp(question, "process/uid")) {
     #ifdef MS_WINDOWS
       *answer = tor_strdup("-1");
     #else
       int myUid = geteuid();
-      tor_asprintf(answer, U64_FORMAT, U64_PRINTF_ARG(myUid));
+      tor_asprintf(answer, "%d", myUid);
     #endif
   } else if (!strcmp(question, "process/user")) {
     #ifdef MS_WINDOWS
@@ -1383,12 +1383,14 @@ getinfo_helper_misc(control_connection_t *conn, const char *question,
   } else if (!strcmp(question, "process/descriptor-limit")) {
     /** platform specifc limits are from the set_max_file_descriptors function
       * of src/common/compat.c */
+    /* XXXX023 This is duplicated code from compat.c; it should turn into a
+     * function.  */
     #ifdef HAVE_GETRLIMIT
       struct rlimit descriptorLimit;
 
       if (getrlimit(RLIMIT_NOFILE, &descriptorLimit) == 0) {
         tor_asprintf(answer, U64_FORMAT,
-        U64_PRINTF_ARG(descriptorLimit.rlim_max));
+                     U64_PRINTF_ARG(descriptorLimit.rlim_max));
       } else {
         *answer = tor_strdup("-1");
       }