From 5413757fa2f0c4a8855d4423817e1a1b76999871 Mon Sep 17 00:00:00 2001 From: Daniel Williams Date: Fri, 17 Aug 2007 21:29:43 +0000 Subject: [PATCH] - Fix compilation with RPM_OPT_FLAGS (rh #249951) - Make debug output to logfile a runtime option --- wpa_supplicant-0.5.7-debug-file.patch | 75 ++++ wpa_supplicant-0.5.7-flush-debug-output.patch | 49 +++ wpa_supplicant-0.5.7-qmake-location.patch | 11 + wpa_supplicant-0.5.7-use-syslog.patch | 405 ------------------ wpa_supplicant.config | 2 + wpa_supplicant.spec | 14 +- 6 files changed, 150 insertions(+), 406 deletions(-) create mode 100644 wpa_supplicant-0.5.7-debug-file.patch create mode 100644 wpa_supplicant-0.5.7-flush-debug-output.patch create mode 100644 wpa_supplicant-0.5.7-qmake-location.patch delete mode 100644 wpa_supplicant-0.5.7-use-syslog.patch diff --git a/wpa_supplicant-0.5.7-debug-file.patch b/wpa_supplicant-0.5.7-debug-file.patch new file mode 100644 index 0000000..32a1f30 --- /dev/null +++ b/wpa_supplicant-0.5.7-debug-file.patch @@ -0,0 +1,75 @@ +--- wpa_supplicant-0.5.7/main.c.debugfile 2007-07-30 21:48:35.000000000 -0400 ++++ wpa_supplicant-0.5.7/main.c 2007-07-30 22:12:06.000000000 -0400 +@@ -45,7 +45,12 @@ static void usage(void) + "[-p] \\\n" + " [-b [-N -i -c [-C] " + "[-D] \\\n" +- " [-p] [-b] ...]\n" ++ " [-p] [-b] ...] " ++#ifdef CONFIG_DEBUG_FILE ++ "[-f] \\\n" ++#else ++ "\n" ++#endif + "\n" + "drivers:\n", + wpa_supplicant_version, wpa_supplicant_license); +@@ -65,6 +70,9 @@ static void usage(void) + " -i = interface name\n" + " -d = increase debugging verbosity (-dd even more)\n" + " -D = driver name\n" ++#ifdef CONFIG_DEBUG_FILE ++ " -f = Log output to /var/log/wpa_supplicant.log\n" ++#endif + " -g = global ctrl_interface\n" + " -K = include keys (passwords, etc.) in debug output\n" + " -t = include timestamp in debug messages\n" +@@ -143,7 +151,7 @@ int main(int argc, char *argv[]) + wpa_supplicant_fd_workaround(); + + for (;;) { +- c = getopt(argc, argv, "b:Bc:C:D:dg:hi:KLNp:P:qtuvwW"); ++ c = getopt(argc, argv, "b:Bc:C:D:dfg:hi:KLNp:P:qtuvwW"); + if (c < 0) + break; + switch (c) { +@@ -172,6 +180,11 @@ int main(int argc, char *argv[]) + params.wpa_debug_level--; + break; + #endif /* CONFIG_NO_STDOUT_DEBUG */ ++#ifdef CONFIG_DEBUG_FILE ++ case 'f': ++ params.wpa_debug_use_file = 1; ++ break; ++#endif + case 'g': + params.ctrl_interface = optarg; + break; +--- wpa_supplicant-0.5.7/common.c.debugfile 2007-07-30 21:39:40.000000000 -0400 ++++ wpa_supplicant-0.5.7/common.c 2007-07-30 22:11:11.000000000 -0400 +@@ -354,11 +354,8 @@ int wpa_debug_open_file(void) + #ifdef _WIN32 + os_snprintf(fname, sizeof(fname), "\\Temp\\wpa_supplicant-log-%d.txt", + count++); +-#else /* _WIN32 */ +- os_snprintf(fname, sizeof(fname), "/tmp/wpa_supplicant-log-%d.txt", +- count++); + #endif /* _WIN32 */ +- out_file = fopen(fname, "w"); ++ out_file = fopen("/var/log/wpa_supplicant.log", "a"); + return out_file == NULL ? -1 : 0; + #else /* CONFIG_DEBUG_FILE */ + return 0; +--- wpa_supplicant-0.5.7/Makefile.debugfile 2007-07-30 21:44:14.000000000 -0400 ++++ wpa_supplicant-0.5.7/Makefile 2007-07-30 21:44:46.000000000 -0400 +@@ -744,6 +744,10 @@ ifndef LDO + LDO=$(CC) + endif + ++ifdef CONFIG_DEBUG_FILE ++CFLAGS += -DCONFIG_DEBUG_FILE ++endif ++ + dynamic_eap_methods: $(EAPDYN) + + wpa_supplicant: .config $(OBJS) diff --git a/wpa_supplicant-0.5.7-flush-debug-output.patch b/wpa_supplicant-0.5.7-flush-debug-output.patch new file mode 100644 index 0000000..486dbfe --- /dev/null +++ b/wpa_supplicant-0.5.7-flush-debug-output.patch @@ -0,0 +1,49 @@ +--- wpa_supplicant-0.5.7/common.c.flush-debug 2007-07-30 23:15:34.000000000 -0400 ++++ wpa_supplicant-0.5.7/common.c 2007-07-30 23:17:06.000000000 -0400 +@@ -157,6 +157,7 @@ void wpa_debug_print_timestamp(void) + if (out_file) { + fprintf(out_file, "%ld.%06u: ", (long) tv.sec, + (unsigned int) tv.usec); ++ fflush(out_file); + } else + #endif /* CONFIG_DEBUG_FILE */ + printf("%ld.%06u: ", (long) tv.sec, (unsigned int) tv.usec); +@@ -185,6 +186,7 @@ void wpa_printf(int level, char *fmt, .. + if (out_file) { + vfprintf(out_file, fmt, ap); + fprintf(out_file, "\n"); ++ fflush(out_file); + } else { + #endif /* CONFIG_DEBUG_FILE */ + vprintf(fmt, ap); +@@ -217,6 +219,7 @@ static void _wpa_hexdump(int level, cons + fprintf(out_file, " [REMOVED]"); + } + fprintf(out_file, "\n"); ++ fflush(out_file); + } else { + #endif /* CONFIG_DEBUG_FILE */ + printf("%s - hexdump(len=%lu):", title, (unsigned long) len); +@@ -262,12 +265,14 @@ static void _wpa_hexdump_ascii(int level + fprintf(out_file, + "%s - hexdump_ascii(len=%lu): [REMOVED]\n", + title, (unsigned long) len); ++ fflush(out_file); + return; + } + if (buf == NULL) { + fprintf(out_file, + "%s - hexdump_ascii(len=%lu): [NULL]\n", + title, (unsigned long) len); ++ fflush(out_file); + return; + } + fprintf(out_file, "%s - hexdump_ascii(len=%lu):\n", +@@ -292,6 +297,7 @@ static void _wpa_hexdump_ascii(int level + pos += llen; + len -= llen; + } ++ fflush(out_file); + } else { + #endif /* CONFIG_DEBUG_FILE */ + if (!show) { diff --git a/wpa_supplicant-0.5.7-qmake-location.patch b/wpa_supplicant-0.5.7-qmake-location.patch new file mode 100644 index 0000000..fd40c58 --- /dev/null +++ b/wpa_supplicant-0.5.7-qmake-location.patch @@ -0,0 +1,11 @@ +--- wpa_supplicant-0.5.7/Makefile.qmake 2007-07-30 22:17:29.000000000 -0400 ++++ wpa_supplicant-0.5.7/Makefile 2007-07-30 22:17:46.000000000 -0400 +@@ -818,7 +818,7 @@ windows-bin: $(WINALL) + $(STRIP) $(WINALL) + + wpa_gui/Makefile: +- qmake -o wpa_gui/Makefile wpa_gui/wpa_gui.pro ++ $(QTDIR)/bin/qmake -o wpa_gui/Makefile wpa_gui/wpa_gui.pro + + wpa_gui: wpa_gui/Makefile + $(MAKE) -C wpa_gui diff --git a/wpa_supplicant-0.5.7-use-syslog.patch b/wpa_supplicant-0.5.7-use-syslog.patch deleted file mode 100644 index 318f0d6..0000000 --- a/wpa_supplicant-0.5.7-use-syslog.patch +++ /dev/null @@ -1,405 +0,0 @@ ---- wpa_supplicant-0.5.7/wpa_supplicant.c.syslog 2007-04-09 10:54:27.000000000 -0400 -+++ wpa_supplicant-0.5.7/wpa_supplicant.c 2007-04-09 10:54:27.000000000 -0400 -@@ -18,6 +18,8 @@ - - #include "includes.h" - -+#include -+ - #include "common.h" - #include "eapol_sm.h" - #include "eap.h" -@@ -111,6 +113,8 @@ - extern int wpa_debug_show_keys; - extern int wpa_debug_timestamp; - -+extern char * use_syslog; -+ - static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx); - - #if defined(IEEE8021X_EAPOL) || !defined(CONFIG_NO_WPA) -@@ -2533,6 +2537,28 @@ - return global; - } - -+static int get_facility(const char *f) -+{ -+ if (!strcmp(f, "authpriv")) return LOG_AUTHPRIV; -+ if (!strcmp(f, "cron")) return LOG_CRON; -+ if (!strcmp(f, "daemon")) return LOG_DAEMON; -+ if (!strcmp(f, "ftp")) return LOG_FTP; -+ if (!strcmp(f, "kern")) return LOG_KERN; -+ if (!strcmp(f, "local0")) return LOG_LOCAL0; -+ if (!strcmp(f, "local1")) return LOG_LOCAL1; -+ if (!strcmp(f, "local2")) return LOG_LOCAL2; -+ if (!strcmp(f, "local3")) return LOG_LOCAL3; -+ if (!strcmp(f, "local4")) return LOG_LOCAL4; -+ if (!strcmp(f, "local5")) return LOG_LOCAL5; -+ if (!strcmp(f, "local6")) return LOG_LOCAL6; -+ if (!strcmp(f, "local7")) return LOG_LOCAL7; -+ if (!strcmp(f, "lpr")) return LOG_LPR; -+ if (!strcmp(f, "mail")) return LOG_MAIL; -+ if (!strcmp(f, "news")) return LOG_NEWS; -+ if (!strcmp(f, "user")) return LOG_USER; -+ if (!strcmp(f, "uucp")) return LOG_UUCP; -+ return LOG_DAEMON; -+} - - /** - * wpa_supplicant_run - Run the %wpa_supplicant main event loop -@@ -2551,6 +2577,9 @@ - wpa_supplicant_daemon(global->params.pid_file)) - return -1; - -+ if (use_syslog) -+ openlog("wpa_supplicant", LOG_PID | LOG_CONS | LOG_PERROR, get_facility(use_syslog)); -+ - if (global->params.wait_for_monitor) { - for (wpa_s = global->ifaces; wpa_s; wpa_s = wpa_s->next) - if (wpa_s->ctrl_iface) -@@ -2563,6 +2592,9 @@ - - eloop_run(); - -+ if (use_syslog) -+ closelog(); -+ - return 0; - } - ---- wpa_supplicant-0.5.7/common.c.syslog 2006-12-31 16:41:44.000000000 -0500 -+++ wpa_supplicant-0.5.7/common.c 2007-04-09 10:54:27.000000000 -0400 -@@ -13,6 +13,7 @@ - */ - - #include "includes.h" -+#include - - #include "common.h" - -@@ -37,6 +38,7 @@ - return -1; - } - -+extern char * use_syslog; - - static int hex2byte(const char *hex) - { -@@ -162,6 +164,35 @@ - printf("%ld.%06u: ", (long) tv.sec, (unsigned int) tv.usec); - } - -+char * wpa_debug_print_timestamp_internal(char *out) -+{ -+ struct timeval tv; -+ char buf[16]; -+ char *p = out; -+ -+ if (!wpa_debug_timestamp) -+ return out; -+ -+ gettimeofday(&tv, NULL); -+ if (strftime(buf, sizeof(buf), "%b %d %H:%M:%S", -+ localtime((const time_t *) &tv.tv_sec)) <= 0) { -+ snprintf(buf, sizeof(buf), "%u", (int) tv.tv_sec); -+ } -+ return p + sprintf(out, "%s.%06u: ", buf, (unsigned int) tv.tv_usec); -+} -+ -+int wpa_to_syslog_level(int wpal) -+{ -+ if (wpal <= MSG_DEBUG) -+ return LOG_DEBUG; -+ else if (wpal == MSG_INFO) -+ return LOG_INFO; -+ else if (wpal == MSG_WARNING) -+ return LOG_WARNING; -+ else if (wpal == MSG_ERROR) -+ return LOG_ERR; -+ return LOG_INFO; -+} - - /** - * wpa_printf - conditional printf -@@ -177,20 +208,26 @@ - void wpa_printf(int level, char *fmt, ...) - { - va_list ap; -+ char out_buf[2048]; -+ char * p = &out_buf[0]; - - va_start(ap, fmt); - if (level >= wpa_debug_level) { - wpa_debug_print_timestamp(); -+ p = wpa_debug_print_timestamp_internal(p); -+ vsprintf(p, fmt, ap); -+ if (use_syslog) -+ syslog(wpa_to_syslog_level(level), "%s\n", out_buf); -+ else - #ifdef CONFIG_DEBUG_FILE -- if (out_file) { -- vfprintf(out_file, fmt, ap); -- fprintf(out_file, "\n"); -- } else { -+ if (out_file) { -+ fprintf(out_file, out_buf); -+ fprintf(out_file, "\n"); -+ } else { - #endif /* CONFIG_DEBUG_FILE */ -- vprintf(fmt, ap); -- printf("\n"); -+ printf("%s\n", out_buf); - #ifdef CONFIG_DEBUG_FILE -- } -+ } - #endif /* CONFIG_DEBUG_FILE */ - } - va_end(ap); -@@ -201,36 +238,33 @@ - size_t len, int show) - { - size_t i; -+ char out_buf[2048]; -+ char * p = &out_buf[0]; -+ - if (level < wpa_debug_level) - return; -- wpa_debug_print_timestamp(); --#ifdef CONFIG_DEBUG_FILE -- if (out_file) { -- fprintf(out_file, "%s - hexdump(len=%lu):", -- title, (unsigned long) len); -- if (buf == NULL) { -- fprintf(out_file, " [NULL]"); -- } else if (show) { -- for (i = 0; i < len; i++) -- fprintf(out_file, " %02x", buf[i]); -- } else { -- fprintf(out_file, " [REMOVED]"); -- } -- fprintf(out_file, "\n"); -- } else { --#endif /* CONFIG_DEBUG_FILE */ -- printf("%s - hexdump(len=%lu):", title, (unsigned long) len); -+ p = wpa_debug_print_timestamp_internal(p); -+ p += sprintf(p, "%s - hexdump(len=%lu):", title, (unsigned long) len); - if (buf == NULL) { -- printf(" [NULL]"); -+ p += sprintf(p, " [NULL]"); - } else if (show) { - for (i = 0; i < len; i++) -- printf(" %02x", buf[i]); -+ p += sprintf(p, " %02x", buf[i]); - } else { -- printf(" [REMOVED]"); -+ p += sprintf(p, " [REMOVED]"); - } -- printf("\n"); -+ if (use_syslog) -+ syslog(wpa_to_syslog_level(level), "%s\n", out_buf); -+ else - #ifdef CONFIG_DEBUG_FILE -- } -+ if (out_file) { -+ fprintf(out_file, out_buf); -+ fprintf(out_file, "\n"); -+ } else { -+#endif /* CONFIG_DEBUG_FILE */ -+ printf("%s\n", out_buf); -+#ifdef CONFIG_DEBUG_FILE -+ } - #endif /* CONFIG_DEBUG_FILE */ - } - -@@ -252,81 +286,55 @@ - size_t i, llen; - const u8 *pos = buf; - const size_t line_len = 16; -+ char out_buf[2048]; -+ char * p = &out_buf[0]; - - if (level < wpa_debug_level) - return; -- wpa_debug_print_timestamp(); --#ifdef CONFIG_DEBUG_FILE -- if (out_file) { -- if (!show) { -- fprintf(out_file, -- "%s - hexdump_ascii(len=%lu): [REMOVED]\n", -- title, (unsigned long) len); -- return; -- } -- if (buf == NULL) { -- fprintf(out_file, -- "%s - hexdump_ascii(len=%lu): [NULL]\n", -- title, (unsigned long) len); -- return; -- } -- fprintf(out_file, "%s - hexdump_ascii(len=%lu):\n", -- title, (unsigned long) len); -- while (len) { -- llen = len > line_len ? line_len : len; -- fprintf(out_file, " "); -- for (i = 0; i < llen; i++) -- fprintf(out_file, " %02x", pos[i]); -- for (i = llen; i < line_len; i++) -- fprintf(out_file, " "); -- fprintf(out_file, " "); -- for (i = 0; i < llen; i++) { -- if (isprint(pos[i])) -- fprintf(out_file, "%c", pos[i]); -- else -- fprintf(out_file, "_"); -- } -- for (i = llen; i < line_len; i++) -- fprintf(out_file, " "); -- fprintf(out_file, "\n"); -- pos += llen; -- len -= llen; -- } -- } else { --#endif /* CONFIG_DEBUG_FILE */ -+ p = wpa_debug_print_timestamp_internal(p); - if (!show) { -- printf("%s - hexdump_ascii(len=%lu): [REMOVED]\n", -+ p += sprintf(p, "%s - hexdump_ascii(len=%lu): [REMOVED]\n", - title, (unsigned long) len); -- return; -+ goto out; - } - if (buf == NULL) { -- printf("%s - hexdump_ascii(len=%lu): [NULL]\n", -+ p += sprintf(p, "%s - hexdump_ascii(len=%lu): [NULL]\n", - title, (unsigned long) len); -- return; -+ goto out; - } -- printf("%s - hexdump_ascii(len=%lu):\n", title, (unsigned long) len); -+ p += sprintf(p, "%s - hexdump_ascii(len=%lu):\n", title, (unsigned long) len); - while (len) { - llen = len > line_len ? line_len : len; -- printf(" "); -+ p += sprintf(p, " "); - for (i = 0; i < llen; i++) -- printf(" %02x", pos[i]); -+ p += sprintf(p, " %02x", pos[i]); - for (i = llen; i < line_len; i++) -- printf(" "); -- printf(" "); -+ p += sprintf(p, " "); -+ p += sprintf(p, " "); - for (i = 0; i < llen; i++) { - if (isprint(pos[i])) -- printf("%c", pos[i]); -+ p += sprintf(p, "%c", pos[i]); - else -- printf("_"); -+ p += sprintf(p, "_"); - } - for (i = llen; i < line_len; i++) -- printf(" "); -- printf("\n"); -+ p += sprintf(p, " "); - pos += llen; - len -= llen; - } -+out: -+ if (use_syslog) -+ syslog(wpa_to_syslog_level(level), "%s\n", out_buf); -+ else - #ifdef CONFIG_DEBUG_FILE -- } -+ if (out_file) { -+ fprintf(out_file, out_buf); -+ fprintf(out_file, "\n"); -+ } else { -+#endif /* CONFIG_DEBUG_FILE */ -+ printf("%s\n", out_buf); -+#ifdef CONFIG_DEBUG_FILE -+ } - #endif /* CONFIG_DEBUG_FILE */ - } - ---- wpa_supplicant-0.5.7/wpa_passphrase.c.syslog 2007-04-09 10:55:41.000000000 -0400 -+++ wpa_supplicant-0.5.7/wpa_passphrase.c 2007-04-09 10:55:53.000000000 -0400 -@@ -17,6 +17,7 @@ - #include "common.h" - #include "sha1.h" - -+char * use_syslog = NULL; - - int main(int argc, char *argv[]) - { ---- wpa_supplicant-0.5.7/main.c.syslog 2006-11-29 22:37:01.000000000 -0500 -+++ wpa_supplicant-0.5.7/main.c 2007-04-09 10:54:27.000000000 -0400 -@@ -33,6 +33,7 @@ - - extern struct wpa_driver_ops *wpa_supplicant_drivers[]; - -+char * use_syslog = NULL; - - static void usage(void) - { -@@ -69,7 +70,8 @@ - " -K = include keys (passwords, etc.) in debug output\n" - " -t = include timestamp in debug messages\n" - " -h = show this help text\n" -- " -L = show license (GPL and BSD)\n"); -+ " -L = show license (GPL and BSD)\n" -+ " -o = syslog facility to use\n"); - printf(" -p = driver parameters\n" - " -P = PID file\n" - " -q = decrease debugging verbosity (-qq even less)\n" -@@ -120,6 +122,20 @@ - #endif /* __linux__ */ - } - -+static int -+validate_syslog_facility(const char * f) -+{ -+ if (!f) return 0; -+ if (strcmp(f, "authpriv") && strcmp(f, "cron") && strcmp(f, "daemon") -+ && strcmp(f, "ftp") && strcmp(f, "kern") && strcmp(f, "local0") -+ && strcmp(f, "local1") && strcmp(f, "local2") && strcmp(f, "local3") -+ && strcmp(f, "local4") && strcmp(f, "local5") && strcmp(f, "local6") -+ && strcmp(f, "local8") && strcmp(f, "lpr") && strcmp(f, "mail") -+ && strcmp(f, "news") && strcmp(f, "user") && strcmp(f, "uucp")) -+ return -1; -+ return 0; -+} -+ - - int main(int argc, char *argv[]) - { -@@ -143,7 +159,7 @@ - wpa_supplicant_fd_workaround(); - - for (;;) { -- c = getopt(argc, argv, "b:Bc:C:D:dg:hi:KLNp:P:qtuvwW"); -+ c = getopt(argc, argv, "b:Bc:C:D:dg:hi:KLNo:p:P:qtuvwW"); - if (c < 0) - break; - switch (c) { -@@ -187,6 +203,9 @@ - case 'L': - license(); - goto out; -+ case 'o': -+ use_syslog = optarg; -+ break; - case 'p': - iface->driver_param = optarg; - break; -@@ -231,6 +250,12 @@ - } - - exitcode = 0; -+ -+ if (validate_syslog_facility (use_syslog)) { -+ printf("Invalid syslog facility '%s'\n", use_syslog); -+ exitcode = -1; -+ } -+ - global = wpa_supplicant_init(¶ms); - if (global == NULL) { - printf("Failed to initialize wpa_supplicant\n"); diff --git a/wpa_supplicant.config b/wpa_supplicant.config index 9d27885..ede8864 100644 --- a/wpa_supplicant.config +++ b/wpa_supplicant.config @@ -29,3 +29,5 @@ CONFIG_EAP_LEAP=y //CONFIG_PCSC=y CONFIG_PKCS12=y CONFIG_SMARTCARD=y +CONFIG_DEBUG_FILE=y + diff --git a/wpa_supplicant.spec b/wpa_supplicant.spec index bff5809..0b8c922 100644 --- a/wpa_supplicant.spec +++ b/wpa_supplicant.spec @@ -2,7 +2,7 @@ Summary: WPA/WPA2/IEEE 802.1X Supplicant Name: wpa_supplicant Epoch: 1 Version: 0.5.7 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2 Group: System Environment/Base Source0: http://hostap.epitest.fi/releases/%{name}-%{version}.tar.gz @@ -16,6 +16,9 @@ Patch1: wpa_supplicant-driver-wext-debug.patch Patch2: wpa_supplicant-wep-key-fix.patch # http://hostap.epitest.fi/bugz/show_bug.cgi?id=192 Patch3: wpa_supplicant-fix-deprecated-dbus-function.patch +Patch4: wpa_supplicant-0.5.7-debug-file.patch +Patch5: wpa_supplicant-0.5.7-qmake-location.patch +Patch6: wpa_supplicant-0.5.7-flush-debug-output.patch URL: http://w1.fi/wpa_supplicant/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -46,10 +49,15 @@ Graphical User Interface for wpa_supplicant written using QT3 %patch1 -p1 -b .driver-wext-debug %patch2 -p1 -b .wep-key-fix %patch3 -p0 -b .fix-deprecated-dbus-functions +%patch4 -p1 -b .debug-file +%patch5 -p1 -b .qmake-location +%patch6 -p1 -b .flush-debug-output %build cp %{SOURCE1} ./.config tar -xjf %{SOURCE5} +CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; +CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; make %{_smp_mflags} QTDIR=%{_libdir}/qt-3.3 make wpa_gui %{_smp_mflags} @@ -126,6 +134,10 @@ fi %{_bindir}/wpa_gui %changelog +* Fri Aug 17 2007 Dan Williams - 0.5.7-6 +- Fix compilation with RPM_OPT_FLAGS (rh #249951) +- Make debug output to logfile a runtime option + * Fri Aug 17 2007 Christopher Aillon - 0.5.7-5 - Update the license tag