struct group *group; /* Default group */
char *old_serverroot, /* Old ServerRoot */
*old_requestroot; /* Old RequestRoot */
+ int old_remote_port; /* Old RemotePort */
const char *tmpdir; /* TMPDIR environment variable */
struct stat tmpinfo; /* Temporary directory info */
cupsd_policy_t *p; /* Policy */
cupsdDeleteAllListeners();
- RemoteAccessEnabled = 0;
+ old_remote_port = RemotePort;
+ RemotePort = 0;
/*
* String options...
RunUser = getuid();
cupsdLogMessage(CUPSD_LOG_INFO, "Remote access is %s.",
- RemoteAccessEnabled ? "enabled" : "disabled");
+ RemotePort ? "enabled" : "disabled");
/*
* See if the ServerName is an IP address...
*/
- if (!ServerName)
+ if (ServerName)
+ {
+ if (!ServerAlias)
+ ServerAlias = cupsArrayNew(NULL, NULL);
+
+ cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", ServerName);
+ }
+ else
{
if (gethostname(temp, sizeof(temp)))
{
cupsdAddAlias(ServerAlias, temp);
cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", temp);
- if (HostNameLookups || RemoteAccessEnabled)
+ if (HostNameLookups || RemotePort)
{
struct hostent *host; /* Host entry to get FQDN */
*/
if (NeedReload == RELOAD_ALL ||
+ old_remote_port != RemotePort ||
!old_serverroot || !ServerRoot || strcmp(old_serverroot, ServerRoot) ||
!old_requestroot || !RequestRoot || strcmp(old_requestroot, RequestRoot))
{
ntohs(lis->address.ipv4.sin_port));
if (!httpAddrLocalhost(&(lis->address)))
- RemoteAccessEnabled = 1;
+ {
+#ifdef AF_INET6
+ if (lis->address.addr.sa_family == AF_INET6)
+ RemotePort = ntohs(lis->address.ipv6.sin6_port);
+ else
+#endif /* AF_INET6 */
+ RemotePort = ntohs(lis->address.ipv4.sin_port);
+ }
}
/*