Attention is currently required from: flichtenheld, plaisthos.

Hello flichtenheld,

I'd like you to reexamine a change. Please visit

    http://gerrit.openvpn.net/c/openvpn/+/1942?usp=email

to look at the new patch set (#8).


Change subject: Change most ENABLE_DEBUG ifdefs to ifndef ENABLE_SMALL
......................................................................

Change most ENABLE_DEBUG ifdefs to ifndef ENABLE_SMALL

Most of these are verbose logging or even enable logging at high
verbosity level or just useful tools like --show-gateway.

We had --enabled-debug on by default forever, so these "debug"
logs are on by default. This patch instead moves them to
enable-small.

Since the verbose logging is now always enabled
(apart from --enable-small), --enable-debug now only covers true
debug options like gremlin.

Rename the configure option from --enable-debug to
--enable-developer-debug to ensure existing build
script/maintainer do not enable this option
by default.

Remove dmsg macro from tapctl's error.h since it does
not use that macro at all.

Change-Id: I3f96cd1c3488b558b8a597594d99edcba1214d27
---
M CMakeLists.txt
M Changes.md
M config.h.cmake.in
M configure.ac
M dev-tools/cppcheck-suppression
M dev-tools/openvpn-cppcheck-library.cfg
M src/openvpn/compstub.c
M src/openvpn/crypto_mbedtls.c
M src/openvpn/crypto_mbedtls_legacy.c
M src/openvpn/error.h
M src/openvpn/event.c
M src/openvpn/forward.c
M src/openvpn/mroute.c
M src/openvpn/mtcp.c
M src/openvpn/mudp.c
M src/openvpn/multi.c
M src/openvpn/multi_io.c
M src/openvpn/options.c
M src/openvpn/packet_id.c
M src/openvpn/plugin.c
M src/openvpn/plugin.h
M src/openvpn/reliable.c
M src/openvpn/route.c
M src/openvpn/schedule.c
M src/tapctl/error.h
25 files changed, 54 insertions(+), 55 deletions(-)


  git pull ssh://gerrit.openvpn.net:29418/openvpn refs/changes/42/1942/8

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6eb5954..d553697 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -40,6 +40,7 @@
 option(ENABLE_PKCS11 "BUILD with pkcs11-helper" ON)
 option(USE_WERROR "Treat compiler warnings as errors (-Werror)" ON)
 option(FAKE_ANDROID "Target Android but do not use actual cross 
compile/Android cmake to build for simple compile checks on Linux")
+option(ENABLE_DEBUG "Enable building with debug" OFF)

 option(ENABLE_DNS_UPDOWN_BY_DEFAULT "Run --dns-updown hook by default" ON)
 set(DNS_UPDOWN_PATH "${CMAKE_INSTALL_PREFIX}/libexec/openvpn/dns-updown" CACHE 
STRING "Default location for the DNS up/down script")
diff --git a/Changes.md b/Changes.md
index 2684251..5c3270b 100644
--- a/Changes.md
+++ b/Changes.md
@@ -23,6 +23,12 @@
   the characters mentioned above were already escaped. However, the behavior of
   Mbed TLS is slightly different from OpenSSL in that it also escapes "=".

+## Maintainer-visible changes
+
+- The configure-time option `--enable-debug` is no longer  available
+  and the verbose logging is now always included unless `--enable-small`
+  is enabled.
+
 # Overview of changes in 2.7

 ## New features
diff --git a/config.h.cmake.in b/config.h.cmake.in
index c3bb5a5..c6c0a96 100644
--- a/config.h.cmake.in
+++ b/config.h.cmake.in
@@ -18,8 +18,8 @@
 /* Enable shared data channel offload */
 #cmakedefine ENABLE_DCO

-/* Enable debugging support (needed for verb>=4) */
-#define ENABLE_DEBUG 1
+/* Enable debugging support */
+#cmakedefine ENABLE_DEBUG

 /* Enable internal fragmentation support */
 #define ENABLE_FRAGMENT 1
diff --git a/configure.ac b/configure.ac
index 469a475..4226515 100644
--- a/configure.ac
+++ b/configure.ac
@@ -131,9 +131,9 @@

 AC_ARG_ENABLE(
        [debug],
-       [AS_HELP_STRING([--disable-debug], [disable debugging support (disable 
gremlin and verb 7+ messages) @<:@default=yes@:>@])],
+       [AS_HELP_STRING([--enable-developer-debug], [enable developer debugging 
support (enable gremlin) @<:@default=no@:>@])],
        ,
-       [enable_debug="yes"]
+       [enable_debug="no"]
 )

 AC_ARG_ENABLE(
diff --git a/dev-tools/cppcheck-suppression b/dev-tools/cppcheck-suppression
index 299d7a3..b505aef 100644
--- a/dev-tools/cppcheck-suppression
+++ b/dev-tools/cppcheck-suppression
@@ -42,7 +42,7 @@
 intToPointerCast:src/openvpn/multi_io.c
 intToPointerCast:src/openvpn/ps.c
 # FP: constant but differs between platforms
-knownConditionTrueFalse:src/openvpn/error.h:380
+knownConditionTrueFalse:src/openvpn/error.h:382
 knownConditionTrueFalse:src/openvpn/fdmisc.c:80
 knownConditionTrueFalse:src/openvpn/lladdr.c:64
 knownConditionTrueFalse:src/openvpn/platform.c
diff --git a/dev-tools/openvpn-cppcheck-library.cfg 
b/dev-tools/openvpn-cppcheck-library.cfg
index 1ea91f4..decac67 100644
--- a/dev-tools/openvpn-cppcheck-library.cfg
+++ b/dev-tools/openvpn-cppcheck-library.cfg
@@ -26,4 +26,6 @@
   <!-- work around macro confusion -->
   <define name="CMSG_FIRSTHDR" value="cmsg_firsthdr" />
   <define name="CMSG_NXTHDR" value="cmsg_nxthdr" />
+  <!-- otherwise a lot of unused variables are shown for enable-small builds 
-->
+  <define name="DMSG_ALWAYS_AVAILABLE" value="1" />
 </def>
diff --git a/src/openvpn/compstub.c b/src/openvpn/compstub.c
index f0c89f7..2eef587 100644
--- a/src/openvpn/compstub.c
+++ b/src/openvpn/compstub.c
@@ -125,7 +125,7 @@
         return;
     }

-    uint8_t *head = BPTR(buf);
+    const uint8_t *head = BPTR(buf);

     /* no compression or packet to short*/
     if (head[0] != COMP_ALGV2_INDICATOR_BYTE)
diff --git a/src/openvpn/crypto_mbedtls.c b/src/openvpn/crypto_mbedtls.c
index 0c5beb4..05bb60d 100644
--- a/src/openvpn/crypto_mbedtls.c
+++ b/src/openvpn/crypto_mbedtls.c
@@ -842,8 +842,8 @@
     struct gc_arena gc = gc_new();
     uint8_t A1[MAX_HMAC_KEY_LENGTH];

-#ifdef ENABLE_DEBUG
-    /* used by the D_SHOW_KEY_SOURCE, guarded with ENABLE_DEBUG to avoid unused
+#ifndef ENABLE_SMALL
+    /* used by the D_SHOW_KEY_SOURCE, guarded with ENABLE_SMALL to avoid unused
      * variables warnings if compiled with --enable-small */
     const size_t olen_orig = olen;
     const uint8_t *out_orig = out;
diff --git a/src/openvpn/crypto_mbedtls_legacy.c 
b/src/openvpn/crypto_mbedtls_legacy.c
index bbd012f6..f46d8bf 100644
--- a/src/openvpn/crypto_mbedtls_legacy.c
+++ b/src/openvpn/crypto_mbedtls_legacy.c
@@ -989,8 +989,8 @@
     struct gc_arena gc = gc_new();
     uint8_t A1[MAX_HMAC_KEY_LENGTH];

-#ifdef ENABLE_DEBUG
-    /* used by the D_SHOW_KEY_SOURCE, guarded with ENABLE_DEBUG to avoid unused
+#ifndef ENABLE_SMALL
+    /* used by the D_SHOW_KEY_SOURCE, guarded with ENABLE_SMALL to avoid unused
      * variables warnings if compiled with --enable-small */
     const size_t olen_orig = olen;
     const uint8_t *out_orig = out;
diff --git a/src/openvpn/error.h b/src/openvpn/error.h
index a887fc7..9f39572 100644
--- a/src/openvpn/error.h
+++ b/src/openvpn/error.h
@@ -158,7 +158,9 @@
         }                                \
         EXIT_FATAL(flags);               \
     } while (false)
-#ifdef ENABLE_DEBUG
+/* We have DMSG_ALWAYS_AVAILABLE here to able to silence unused warnings for
+ * cppcheck */
+#if !defined(ENABLE_SMALL) || defined(DMSG_ALWAYS_AVAILABLE)
 #define dmsg(flags, ...)                 \
     do                                   \
     {                                    \
diff --git a/src/openvpn/event.c b/src/openvpn/event.c
index 8b7716a..2cb4e04 100644
--- a/src/openvpn/event.c
+++ b/src/openvpn/event.c
@@ -398,7 +398,7 @@

     dmsg(D_EVENT_WAIT, "WE_WAIT enter n=%d to=%d", wes->n_events, timeout);

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_EVENT_WAIT))
     {
         int i;
diff --git a/src/openvpn/forward.c b/src/openvpn/forward.c
index 6fe5849..a8a4a07 100644
--- a/src/openvpn/forward.c
+++ b/src/openvpn/forward.c
@@ -50,7 +50,7 @@

 /* show event wait debugging info */

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL

 static const char *
 wait_status_string(struct context *c, struct gc_arena *gc)
@@ -75,7 +75,7 @@
     gc_free(&gc);
 }

-#endif /* ifdef ENABLE_DEBUG */
+#endif

 static void
 check_tls_errors_co(struct context *c)
@@ -2190,7 +2190,7 @@
         {
             int status;

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
             if (check_debug_level(D_EVENT_WAIT))
             {
                 show_wait_status(c);
diff --git a/src/openvpn/mroute.c b/src/openvpn/mroute.c
index 39fa482..261d25a 100644
--- a/src/openvpn/mroute.c
+++ b/src/openvpn/mroute.c
@@ -501,7 +501,7 @@
     }
     mh->n_net_len = j;

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_MULTI_DEBUG))
     {
         struct gc_arena gc = gc_new();
diff --git a/src/openvpn/mtcp.c b/src/openvpn/mtcp.c
index 5d88f8a..b0125f1 100644
--- a/src/openvpn/mtcp.c
+++ b/src/openvpn/mtcp.c
@@ -74,7 +74,7 @@
         mi->did_real_hash = true;
     }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (mi)
     {
         dmsg(D_MULTI_DEBUG, "MULTI TCP: instance added: %s", 
mroute_addr_print(&mi->real, &gc));
diff --git a/src/openvpn/mudp.c b/src/openvpn/mudp.c
index 88b0091..4794b7e 100644
--- a/src/openvpn/mudp.c
+++ b/src/openvpn/mudp.c
@@ -431,7 +431,7 @@
         }
     }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_MULTI_DEBUG))
     {
         struct gc_arena gc = gc_new();
diff --git a/src/openvpn/multi.c b/src/openvpn/multi.c
index 3e72b92..67204c3 100644
--- a/src/openvpn/multi.c
+++ b/src/openvpn/multi.c
@@ -1145,7 +1145,7 @@
         }
     }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_MULTI_DEBUG))
     {
         struct gc_arena gc = gc_new();
diff --git a/src/openvpn/multi_io.c b/src/openvpn/multi_io.c
index 3604684..4b96c57 100644
--- a/src/openvpn/multi_io.c
+++ b/src/openvpn/multi_io.c
@@ -46,7 +46,7 @@
 #define MULTI_IO_FILE_CLOSE_WRITE ((void *)5)
 #define MULTI_IO_DCO              ((void *)6)

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 static const char *
 pract(int action)
 {
@@ -89,7 +89,7 @@
             return "?";
     }
 }
-#endif /* ENABLE_DEBUG */
+#endif

 static inline struct context *
 multi_get_context(struct multi_context *m, struct multi_instance *mi)
diff --git a/src/openvpn/options.c b/src/openvpn/options.c
index e3cd527..d53c2c5 100644
--- a/src/openvpn/options.c
+++ b/src/openvpn/options.c
@@ -785,7 +785,7 @@
 #endif /* ENABLE_PKCS11 */
     "\n"
     "General Standalone Options:\n"
-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     "--show-gateway [address]: Show info about gateway [to v4/v6 address].\n"
 #endif
     ;
@@ -4229,7 +4229,7 @@
         read_config_file(options, p[1], level, file, line, msglevel, 
permission_mask,
                          option_types_found, es);
     }
-#if defined(ENABLE_DEBUG) && !defined(ENABLE_SMALL)
+#ifndef ENABLE_SMALL
     else if (streq(p[0], "show-gateway") && !p[2])
     {
         struct route_gateway_info rgi;
@@ -4938,12 +4938,13 @@
              * mbed TLS always generating debug level logging */
             options->ssl_flags |= SSLF_TLS_DEBUG_ENABLED;
         }
-#if !defined(ENABLE_DEBUG) && !defined(ENABLE_SMALL)
+#ifdef ENABLE_SMALL
         /* Warn when a debug verbosity is supplied when built without debug 
support */
         if (options->verbosity >= 7)
         {
             msg(M_WARN,
-                "NOTE: debug verbosity (--verb %d) is enabled but this build 
lacks debug support.",
+                "NOTE: debug verbosity (--verb %d) is enabled but this build 
is "
+                "built with --enable-small that lacks support for high --verb 
settings",
                 options->verbosity);
         }
 #endif
diff --git a/src/openvpn/packet_id.c b/src/openvpn/packet_id.c
index a4b627c..22c53c7 100644
--- a/src/openvpn/packet_id.c
+++ b/src/openvpn/packet_id.c
@@ -52,18 +52,18 @@
 #define SEQ_UNSEEN  ((time_t)0)
 #define SEQ_EXPIRED ((time_t)1)

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 static void packet_id_debug_print(msglvl_t msglevel, const struct 
packet_id_rec *p,
                                   const struct packet_id_net *pin, const char 
*message,
                                   packet_id_print_type value);

-#endif /* ENABLE_DEBUG */
+#endif

 static inline void
 packet_id_debug(msglvl_t msglevel, const struct packet_id_rec *p,
                 const struct packet_id_net *pin, const char *message, uint64_t 
value)
 {
-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (unlikely(check_debug_level(msglevel)))
     {
         packet_id_debug_print(msglevel, p, pin, message, value);
@@ -576,7 +576,7 @@
     return (char *)out.data;
 }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL

 static void
 packet_id_debug_print(msglvl_t msglevel, const struct packet_id_rec *p,
@@ -648,7 +648,7 @@
     gc_free(&gc);
 }

-#endif /* ifdef ENABLE_DEBUG */
+#endif

 uint16_t
 packet_id_read_epoch(struct packet_id_net *pin, struct buffer *buf)
diff --git a/src/openvpn/plugin.c b/src/openvpn/plugin.c
index f8adde5..a94f07b 100644
--- a/src/openvpn/plugin.c
+++ b/src/openvpn/plugin.c
@@ -993,7 +993,7 @@
     pr->n = 0;
 }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 void
 plugin_return_print(const msglvl_t msglevel, const char *prefix, const struct 
plugin_return *pr)
 {
@@ -1012,5 +1012,5 @@
         }
     }
 }
-#endif /* ifdef ENABLE_DEBUG */
+#endif
 #endif /* ENABLE_PLUGIN */
diff --git a/src/openvpn/plugin.h b/src/openvpn/plugin.h
index 7e9faf3..684632c 100644
--- a/src/openvpn/plugin.h
+++ b/src/openvpn/plugin.h
@@ -135,7 +135,7 @@

 void plugin_return_free(struct plugin_return *pr);

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 void plugin_return_print(const msglvl_t msglevel, const char *prefix, const 
struct plugin_return *pr);
 
 #endif
diff --git a/src/openvpn/reliable.c b/src/openvpn/reliable.c
index ced438e..b5315ff 100644
--- a/src/openvpn/reliable.c
+++ b/src/openvpn/reliable.c
@@ -462,7 +462,7 @@
     }
 }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 /* print the current sequence of active packet IDs */
 static const char *
 reliable_print_ids(const struct reliable *rel, struct gc_arena *gc)
@@ -480,7 +480,7 @@
     }
     return BSTR(&out);
 }
-#endif /* ENABLE_DEBUG */
+#endif

 /* true if at least one free buffer available */
 bool
diff --git a/src/openvpn/route.c b/src/openvpn/route.c
index 03a2526..e8001b3 100644
--- a/src/openvpn/route.c
+++ b/src/openvpn/route.c
@@ -81,7 +81,7 @@

 static void get_bypass_addresses(struct route_bypass *rb, const unsigned int 
flags);

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL

 static void
 print_bypass_addresses(const struct route_bypass *rb)
@@ -617,7 +617,7 @@
     if (rl->ngi.flags & RGI_ADDR_DEFINED)
     {
         setenv_route_addr(es, "net_gateway", rl->ngi.gateway.addr, -1);
-#if defined(ENABLE_DEBUG) && !defined(ENABLE_SMALL)
+#ifndef ENABLE_SMALL
         print_default_gateway(D_ROUTE, &rl->rgi, NULL);
 #endif
     }
@@ -660,7 +660,7 @@
             add_block_local_routes(rl);
         }
         get_bypass_addresses(&rl->spec.bypass, rl->flags);
-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
         print_bypass_addresses(&rl->spec.bypass);
 #endif
     }
@@ -768,7 +768,7 @@
     if (rl6->ngi6.flags & RGI_ADDR_DEFINED)
     {
         setenv_str(es, "net_gateway_ipv6", 
print_in6_addr(rl6->ngi6.gateway.addr_ipv6, 0, &gc));
-#if defined(ENABLE_DEBUG) && !defined(ENABLE_SMALL)
+#ifndef ENABLE_SMALL
         print_default_gateway(D_ROUTE, NULL, &rl6->rgi6);
 #endif
     }
diff --git a/src/openvpn/schedule.c b/src/openvpn/schedule.c
index 6772ad6..6c60dc2 100644
--- a/src/openvpn/schedule.c
+++ b/src/openvpn/schedule.c
@@ -33,7 +33,7 @@

 #include "memdbg.h"

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
 static void
 schedule_entry_debug_info(const char *caller, const struct schedule_entry *e)
 {
@@ -308,7 +308,7 @@
 void
 schedule_add_modify(struct schedule *s, struct schedule_entry *e)
 {
-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_SCHEDULER))
     {
         schedule_entry_debug_info("schedule_add_modify", e);
@@ -355,7 +355,7 @@
         }
     }

-#ifdef ENABLE_DEBUG
+#ifndef ENABLE_SMALL
     if (check_debug_level(D_SCHEDULER))
     {
         schedule_entry_debug_info("schedule_find_least", e);
diff --git a/src/tapctl/error.h b/src/tapctl/error.h
index f9586dc..4424f56 100644
--- a/src/tapctl/error.h
+++ b/src/tapctl/error.h
@@ -83,19 +83,6 @@
         }                                \
         EXIT_FATAL(flags);               \
     } while (false)
-#ifdef ENABLE_DEBUG
-#define dmsg(flags, ...)                 \
-    do                                   \
-    {                                    \
-        if (msg_test(flags))             \
-        {                                \
-            x_msg((flags), __VA_ARGS__); \
-        }                                \
-        EXIT_FATAL(flags);               \
-    } while (false)
-#else
-#define dmsg(flags, ...)
-#endif

 void x_msg(const unsigned int flags, const char *format, ...); /* should be 
called via msg above */


--
To view, visit http://gerrit.openvpn.net/c/openvpn/+/1942?usp=email
To unsubscribe, or for help writing mail filters, visit 
http://gerrit.openvpn.net/settings?usp=email

Gerrit-MessageType: newpatchset
Gerrit-Project: openvpn
Gerrit-Branch: master
Gerrit-Change-Id: I3f96cd1c3488b558b8a597594d99edcba1214d27
Gerrit-Change-Number: 1942
Gerrit-PatchSet: 8
Gerrit-Owner: plaisthos <[email protected]>
Gerrit-Reviewer: flichtenheld <[email protected]>
Gerrit-CC: openvpn-devel <[email protected]>
Gerrit-Attention: plaisthos <[email protected]>
Gerrit-Attention: flichtenheld <[email protected]>
_______________________________________________
Openvpn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to