Imported Upstream version 3.3.2
[debian/amanda] / common-src / security-util.c
index bc108cdd0fbfcd4747579ce02ce4f933bdd728c9..e3942e649f433492d843d9c4a1115bfb57ad2715 100644 (file)
@@ -988,6 +988,7 @@ bsd_recv_security_ok(
      */
     s = body;
     if (strncmp_const_skip(s, "SERVICE ", s, ch) == 0) {
+       ch=ch;
        serviceX = stralloc(s);
        serviceY = strtok(serviceX, "\n");
        if (serviceY)
@@ -2661,10 +2662,17 @@ find_port_for_service(
 }
 
 char *
-sec_get_authenticated_peer_name_localhost(
+sec_get_authenticated_peer_name_gethostname(
     security_handle_t *hdl G_GNUC_UNUSED)
 {
-    return "localhost";
+    char *server_hostname;
+    server_hostname = malloc(1024);
+    if (gethostname(server_hostname, 1024) == 0) {
+       server_hostname[1023] = '\0';
+       return server_hostname;
+    }
+    amfree(server_hostname);
+    return strdup("localhost");
 }
 
 char *
@@ -2674,5 +2682,5 @@ sec_get_authenticated_peer_name_hostname(
     char *hostname = ((struct sec_handle *)hdl)->hostname;
     if (!hostname)
        hostname = "";
-    return hostname;
+    return strdup(hostname);
 }