Updated version output
authorAlan T. DeKok <aland@freeradius.org>
Fri, 25 Nov 2011 12:04:53 +0000 (13:04 +0100)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 25 Nov 2011 12:04:53 +0000 (13:04 +0100)
Moved compilation flags output from debug messages.  It shouldn't
be there.  Move it to version.c, and made it print out the
detailed list of supported functionality when using "-xv"

src/main/radiusd.c
src/main/version.c

index 8a87616..45c75aa 100644 (file)
@@ -258,18 +258,6 @@ int main(int argc, char *argv[])
                radlog(L_INFO, "You may redistribute copies of FreeRADIUS under the terms of the\n");
                radlog(L_INFO, "GNU General Public License v2.\n");
                radlog(L_INFO, "\n");
-               radlog(L_INFO, "Compilation options:\n");
-#ifdef HAVE_PCREPOSIX_H
-               radlog(L_INFO, "Regex flavour: PCRE\n");
-#else
-#ifdef HAVE_REGEX_H
-               radlog(L_INFO, "Regex flavour: Posix\n");
-#else
-               radlog(L_INFO, "Regex flavour: none\n");
-#endif
-#endif
-
-               fflush(NULL);
        }
 
        /*  Read the configuration files, BEFORE doing anything else.  */
index 5adffd5..cb5a4cd 100644 (file)
@@ -34,57 +34,74 @@ void NEVER_RETURNS version(void)
 {
 
        printf("%s: %s\n", progname, radiusd_version);
-#if 0
-       printf("Compilation flags: ");
 
-       /* here are all the conditional feature flags */
-#if defined(WITH_DHCP)
-       printf(" WITH_DHCP");
+       printf("Copyright (C) 1999-2011 The FreeRADIUS server project and contributors.\n");
+       printf("There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n");
+       printf("PARTICULAR PURPOSE.\n");
+       printf("You may redistribute copies of FreeRADIUS under the terms of the\n");
+       printf("GNU General Public License.\n");
+       printf("For more information about these matters, see the file named COPYRIGHT.\n");
+
+       if (debug_flag) {
+               printf("\n");
+
+               printf("Functionality: ");
+               
+#ifdef WITH_ACCOUNTING
+               printf("accounting, ");
 #endif
-#if defined(WITH_VMPS)
-       printf(" WITH_VMPS");
+               printf("authentication, "); /* always enabled */
+
+#ifdef WITH_COA
+               printf("coa, ");
 #endif
-#if defined(OSFC2)
-       printf(" OSFC2");
+#ifdef WITH_COMMAND_SOCKET
+               printf("control-socket, ");
 #endif
-#if defined(WITHOUT_PROXY)
-       printf(" WITHOUT_PROXY");
+#ifdef WITH_DETAIL
+               printf("detail, ");
 #endif
-#if defined(WITHOUT_DETAIL)
-       printf(" WITHOUT_DETAIL");
+#ifdef WITH_DHCP
+               printf("dhcp, ");
 #endif
-#if defined(WITHOUT_SESSION_MGMT)
-       printf(" WITHOUT_SESSION_MGMT");
+#ifdef WITH_DYNAMIC_CLIENTS
+               printf("dynamic clients, ");
 #endif
-#if defined(WITHOUT_UNLANG)
-       printf(" WITHOUT_UNLANG");
+#ifdef OSFC2
+               printf("OSFC2, ");
 #endif
-#if defined(WITHOUT_ACCOUNTING)
-       printf(" WITHOUT_ACCOUNTING");
+#ifdef WITH_PROXY
+               printf("proxy, ");
 #endif
-#if defined(WITHOUT_DYNAMIC_CLIENTS)
-       printf(" WITHOUT_DYNAMIC_CLIENTS");
+#ifdef HAVE_PCREPOSIX_H
+               printf("regex-PCRE, ");
+#else
+#ifdef HAVE_REGEX_H
+               printf("regex-posix, ");
 #endif
-#if defined(WITHOUT_STATS)
-       printf(" WITHOUT_STATS");
 #endif
-#if defined(WITHOUT_COMMAND_SOCKET)
-       printf(" WITHOUT_COMMAND_SOCKET");
+
+#ifdef WITH_SESSION_MGMT
+               printf("session-management, ");
 #endif
-#if defined(WITHOUT_COA)
-       printf(" WITHOUT_COA");
+#ifdef WITH_STATS
+               printf("stats, ");
 #endif
-#if defined(WITHOUT_TLS)
-       printf(" WITHOUT_TLS");
+#ifdef WITH_TCP
+               printf("tcp, ");
 #endif
-       printf("\n");
+#ifdef WITH_TLS
+               printf("TLS, ");
 #endif
-       printf("Copyright (C) 1999-2011 The FreeRADIUS server project and contributors.\n");
-       printf("There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n");
-       printf("PARTICULAR PURPOSE.\n");
-       printf("You may redistribute copies of FreeRADIUS under the terms of the\n");
-       printf("GNU General Public License.\n");
-       printf("For more information about these matters, see the file named COPYRIGHT.\n");
+#ifdef WITH_UNLANG
+               printf("unlang, ");
+#endif
+#ifdef WITH_VMPS
+               printf("vmps, ");
+#endif
+               printf("\n");
+       }
+
        exit (0);
 }