+ printf(" Network = %s\n", Conf_Network);
+ if (!Conf_PAM)
+ printf(" Password = %s\n", Conf_ServerPwd);
+ printf(" PidFile = %s\n", Conf_PidFile);
+ printf(" Ports = ");
+ ports_puts(&Conf_ListenPorts);
+ grp = getgrgid(Conf_GID);
+ if (grp)
+ printf(" ServerGID = %s\n", grp->gr_name);
+ else
+ printf(" ServerGID = %ld\n", (long)Conf_GID);
+ pwd = getpwuid(Conf_UID);
+ if (pwd)
+ printf(" ServerUID = %s\n", pwd->pw_name);
+ else
+ printf(" ServerUID = %ld\n", (long)Conf_UID);
+ puts("");
+
+ puts("[LIMITS]");
+ printf(" ConnectRetry = %d\n", Conf_ConnectRetry);
+ printf(" IdleTimeout = %d\n", Conf_IdleTimeout);
+ printf(" MaxConnections = %d\n", Conf_MaxConnections);
+ printf(" MaxConnectionsIP = %d\n", Conf_MaxConnectionsIP);
+ printf(" MaxJoins = %d\n", Conf_MaxJoins > 0 ? Conf_MaxJoins : -1);
+ printf(" MaxNickLength = %u\n", Conf_MaxNickLength - 1);
+ printf(" MaxListSize = %d\n", Conf_MaxListSize);
+ printf(" PingTimeout = %d\n", Conf_PingTimeout);
+ printf(" PongTimeout = %d\n", Conf_PongTimeout);
+ puts("");
+
+ puts("[OPTIONS]");
+ printf(" AllowedChannelTypes = %s\n", Conf_AllowedChannelTypes);
+ printf(" AllowRemoteOper = %s\n", yesno_to_str(Conf_AllowRemoteOper));
+ printf(" ChrootDir = %s\n", Conf_Chroot);
+ printf(" CloakHost = %s\n", Conf_CloakHost);
+ printf(" CloakHostModeX = %s\n", Conf_CloakHostModeX);
+ printf(" CloakHostSalt = %s\n", Conf_CloakHostSalt);
+ printf(" CloakUserToNick = %s\n", yesno_to_str(Conf_CloakUserToNick));
+#ifdef WANT_IPV6
+ printf(" ConnectIPv4 = %s\n", yesno_to_str(Conf_ConnectIPv6));
+ printf(" ConnectIPv6 = %s\n", yesno_to_str(Conf_ConnectIPv4));
+#endif
+ printf(" DefaultUserModes = %s\n", Conf_DefaultUserModes);
+ printf(" DNS = %s\n", yesno_to_str(Conf_DNS));
+#ifdef IDENT
+ printf(" Ident = %s\n", yesno_to_str(Conf_Ident));
+#endif
+ printf(" IncludeDir = %s\n", Conf_IncludeDir);
+ printf(" MorePrivacy = %s\n", yesno_to_str(Conf_MorePrivacy));
+ printf(" NoticeAuth = %s\n", yesno_to_str(Conf_NoticeAuth));
+ printf(" OperCanUseMode = %s\n", yesno_to_str(Conf_OperCanMode));
+ printf(" OperChanPAutoOp = %s\n", yesno_to_str(Conf_OperChanPAutoOp));
+ printf(" OperServerMode = %s\n", yesno_to_str(Conf_OperServerMode));
+#ifdef PAM
+ printf(" PAM = %s\n", yesno_to_str(Conf_PAM));
+ printf(" PAMIsOptional = %s\n", yesno_to_str(Conf_PAMIsOptional));
+#endif
+#ifndef STRICT_RFC
+ printf(" RequireAuthPing = %s\n", yesno_to_str(Conf_AuthPing));
+#endif
+ printf(" ScrubCTCP = %s\n", yesno_to_str(Conf_ScrubCTCP));
+#ifdef SYSLOG
+ printf(" SyslogFacility = %s\n",
+ ngt_SyslogFacilityName(Conf_SyslogFacility));
+#endif
+ printf(" WebircPassword = %s\n", Conf_WebircPwd);
+ puts("");
+
+#ifdef SSL_SUPPORT
+ puts("[SSL]");
+ printf(" CertFile = %s\n", Conf_SSLOptions.CertFile
+ ? Conf_SSLOptions.CertFile : "");
+ printf(" CipherList = %s\n", Conf_SSLOptions.CipherList ?
+ Conf_SSLOptions.CipherList : DEFAULT_CIPHERS);
+ printf(" DHFile = %s\n", Conf_SSLOptions.DHFile
+ ? Conf_SSLOptions.DHFile : "");
+ printf(" KeyFile = %s\n", Conf_SSLOptions.KeyFile
+ ? Conf_SSLOptions.KeyFile : "");
+ if (array_bytes(&Conf_SSLOptions.KeyFilePassword))
+ puts(" KeyFilePassword = <secret>");
+ else
+ puts(" KeyFilePassword = ");
+ array_free_wipe(&Conf_SSLOptions.KeyFilePassword);
+ printf(" Ports = ");
+ ports_puts(&Conf_SSLOptions.ListenPorts);
+ puts("");
+#endif