Always choose highest requested debug level
Update man pages about debugging Actually apply the patch from the last one
This commit is contained in:
parent
c783ca786a
commit
8a37c8459f
107
Always-choose-highest-requested-debug-level.patch
Normal file
107
Always-choose-highest-requested-debug-level.patch
Normal file
@ -0,0 +1,107 @@
|
||||
From d284ec7dc9fe0a824b177873078aeb36a25b7878 Mon Sep 17 00:00:00 2001
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Wed, 11 Apr 2018 16:15:00 -0400
|
||||
Subject: [PATCH] Always choose highest requested debug level
|
||||
|
||||
Allowing the CLI to lower the debug level specified in a config file
|
||||
is dubious, and previously broken since we don't distinguish "default
|
||||
value" from "explicitly requested value of 0" in popt. This resulted
|
||||
in "Debug Enabled (level: 0)" even when the log level was not actually
|
||||
0, which is confusing for users.
|
||||
|
||||
Remove the gp_debug_args() function since it is no longer used.
|
||||
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
Reviewed-by: Simo Sorce <simo@redhat.com>
|
||||
Merges: #229
|
||||
(cherry picked from commit 5a714768aec776dc875237dd729c85389932a688)
|
||||
---
|
||||
src/gp_debug.c | 34 ++++++++--------------------------
|
||||
src/gp_debug.h | 3 +--
|
||||
src/gssproxy.c | 2 +-
|
||||
3 files changed, 10 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/src/gp_debug.c b/src/gp_debug.c
|
||||
index 4a141fc..a0f51f0 100644
|
||||
--- a/src/gp_debug.c
|
||||
+++ b/src/gp_debug.c
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* Copyright (C) 2011 the GSS-PROXY contributors, see COPYING for license */
|
||||
+/* Copyright (C) 2011,2018 the GSS-PROXY contributors, see COPYING for license */
|
||||
|
||||
#include "config.h"
|
||||
#include <stdbool.h>
|
||||
@@ -7,35 +7,17 @@
|
||||
#include "gp_log.h"
|
||||
|
||||
/* global debug switch */
|
||||
-int gp_debug;
|
||||
-
|
||||
-int gp_debug_args(int level) {
|
||||
- static int args_level = 0;
|
||||
-
|
||||
- if (level != 0) {
|
||||
- args_level = level;
|
||||
- }
|
||||
- return args_level;
|
||||
-}
|
||||
+int gp_debug = 0;
|
||||
|
||||
void gp_debug_toggle(int level)
|
||||
{
|
||||
- static bool krb5_trace_set = false;
|
||||
+ if (level <= gp_debug)
|
||||
+ return;
|
||||
|
||||
- /* Command line and environment options override config file */
|
||||
- gp_debug = gp_debug_args(0);
|
||||
- if (gp_debug == 0) {
|
||||
- gp_debug = level;
|
||||
- }
|
||||
- if (level >= 3) {
|
||||
- if (!getenv("KRB5_TRACE")) {
|
||||
- setenv("KRB5_TRACE", "/dev/stderr", 1);
|
||||
- krb5_trace_set = true;
|
||||
- }
|
||||
- } else if (krb5_trace_set) {
|
||||
- unsetenv("KRB5_TRACE");
|
||||
- krb5_trace_set = false;
|
||||
- }
|
||||
+ if (level >= 3 && !getenv("KRB5_TRACE"))
|
||||
+ setenv("KRB5_TRACE", "/dev/stderr", 1);
|
||||
+
|
||||
+ gp_debug = level;
|
||||
GPDEBUG("Debug Enabled (level: %d)\n", level);
|
||||
}
|
||||
|
||||
diff --git a/src/gp_debug.h b/src/gp_debug.h
|
||||
index 1c2f8a3..4932bfd 100644
|
||||
--- a/src/gp_debug.h
|
||||
+++ b/src/gp_debug.h
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* Copyright (C) 2011 the GSS-PROXY contributors, see COPYING for license */
|
||||
+/* Copyright (C) 2011,2018 the GSS-PROXY contributors, see COPYING for license */
|
||||
|
||||
#ifndef _GP_DEBUG_H_
|
||||
#define _GP_DEBUG_H_
|
||||
@@ -10,7 +10,6 @@
|
||||
|
||||
extern int gp_debug;
|
||||
|
||||
-int gp_debug_args(int level);
|
||||
void gp_debug_toggle(int);
|
||||
void gp_debug_printf(const char *format, ...);
|
||||
void gp_debug_time_printf(const char *format, ...);
|
||||
diff --git a/src/gssproxy.c b/src/gssproxy.c
|
||||
index 6d36a5d..db6e89b 100644
|
||||
--- a/src/gssproxy.c
|
||||
+++ b/src/gssproxy.c
|
||||
@@ -208,7 +208,7 @@ int main(int argc, const char *argv[])
|
||||
|
||||
if (opt_debug || opt_debug_level > 0) {
|
||||
if (opt_debug_level == 0) opt_debug_level = 1;
|
||||
- gp_debug_args(opt_debug_level);
|
||||
+ gp_debug_toggle(opt_debug_level);
|
||||
}
|
||||
|
||||
if (opt_daemon && opt_interactive) {
|
74
Clarify-debug-and-debug_level-in-man-pages.patch
Normal file
74
Clarify-debug-and-debug_level-in-man-pages.patch
Normal file
@ -0,0 +1,74 @@
|
||||
From d71d354f1020a7deac57f26cc7c2cafb3fa675a3 Mon Sep 17 00:00:00 2001
|
||||
From: Robbie Harwood <rharwood@redhat.com>
|
||||
Date: Wed, 11 Apr 2018 16:01:21 -0400
|
||||
Subject: [PATCH] Clarify debug and debug_level in man pages
|
||||
|
||||
In particular, add debug_level to gssproxy(5) since it was previously
|
||||
accepted but not documented.
|
||||
|
||||
Signed-off-by: Robbie Harwood <rharwood@redhat.com>
|
||||
Reviewed-by: Simo Sorce <simo@redhat.com>
|
||||
Merges: #229
|
||||
(cherry picked from commit e0e96e46be03102903533a9816b4deefe1adfaf8)
|
||||
---
|
||||
man/gssproxy.8.xml | 24 +++++++++++++++++++++++-
|
||||
man/gssproxy.conf.5.xml | 5 ++++-
|
||||
2 files changed, 27 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/man/gssproxy.8.xml b/man/gssproxy.8.xml
|
||||
index 1df4b0d..21f7e6a 100644
|
||||
--- a/man/gssproxy.8.xml
|
||||
+++ b/man/gssproxy.8.xml
|
||||
@@ -118,13 +118,35 @@
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
+
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>-d</option>,<option>--debug</option>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
- Turn on debugging.
|
||||
+ Turn on debugging. This option is identical to
|
||||
+ --debug-level=1.
|
||||
+ </para>
|
||||
+ </listitem>
|
||||
+ </varlistentry>
|
||||
+
|
||||
+ <varlistentry>
|
||||
+ <term>
|
||||
+ <option>--debug-level=</option>
|
||||
+ </term>
|
||||
+ <listitem>
|
||||
+ <para>
|
||||
+ Turn on debugging at the specified level. 0
|
||||
+ corresponds to no logging, while 1 turns on basic
|
||||
+ debug logging. Level 2 increases verbosity, including
|
||||
+ more detailed credential verification.
|
||||
+ </para>
|
||||
+ <para>
|
||||
+ At level 3 and above, KRB5_TRACE output is logged. If
|
||||
+ KRB5_TRACE was already set in the execution
|
||||
+ environment, trace output is sent to its value
|
||||
+ instead.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
diff --git a/man/gssproxy.conf.5.xml b/man/gssproxy.conf.5.xml
|
||||
index de846b4..21c9653 100644
|
||||
--- a/man/gssproxy.conf.5.xml
|
||||
+++ b/man/gssproxy.conf.5.xml
|
||||
@@ -192,7 +192,10 @@
|
||||
<varlistentry>
|
||||
<term>debug (boolean)</term>
|
||||
<listitem>
|
||||
- <para>Enable debugging to syslog.</para>
|
||||
+ <para>
|
||||
+ Enable debugging to syslog. Setting to true is
|
||||
+ identical to setting debug_level to 1.
|
||||
+ </para>
|
||||
<para>Default: debug = false</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
@ -1,7 +1,7 @@
|
||||
Name: gssproxy
|
||||
|
||||
Version: 0.8.0
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
Summary: GSSAPI Proxy
|
||||
|
||||
Group: System Environment/Libraries
|
||||
@ -14,6 +14,9 @@ Source0: https://releases.pagure.org/%{name}/%{name}-%{version}.tar.gz
|
||||
%global gpstatedir %{_localstatedir}/lib/gssproxy
|
||||
|
||||
### Patches ###
|
||||
Patch0: Always-use-the-encype-we-selected.patch
|
||||
Patch1: Clarify-debug-and-debug_level-in-man-pages.patch
|
||||
Patch2: Always-choose-highest-requested-debug-level.patch
|
||||
|
||||
### Dependencies ###
|
||||
Requires: krb5-libs >= 1.12.0
|
||||
@ -108,6 +111,10 @@ mkdir -p %{buildroot}%{gpstatedir}/rcache
|
||||
%systemd_postun_with_restart gssproxy.service
|
||||
|
||||
%changelog
|
||||
* Thu Apr 12 2018 Robbie Harwood <rharwood@redhat.com> - 0.8.0-3
|
||||
- Always choose highest requested debug level
|
||||
- Update man pages about debugging
|
||||
|
||||
* Tue Feb 27 2018 Robbie Harwood <rharwood@redhat.com> - 0.8.0-2
|
||||
- Always use the encype we selected
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user