git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Use sensible domain name (the DNS one) when guessing ident information

From
Petr Baudis <pasky@suse.cz>
Date
Oct 21, 2005, 01:57 UTC
Message-ID
<20051021015739.16471.21112.stgit@machine.or.cz>

Currently, the code would use getdomainname() call, which however returns something usually unset and not necessarily related at all to the DNS domain name (it seems to be mostly some scary NIS/YP thing).

This patch changes the code to actually use the DNS domain name, which is also what tends to be used in emails, and we aim at emails with our ident code.

Signed-off-by: Petr Baudis <pasky@suse.cz>
---
 ident.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/ident.c b/ident.c
index 06d0e6c..bc89e1d 100644
--- a/ident.c
+++ b/ident.c
@@ -8,6 +8,7 @@
 #include "cache.h"
 
 #include <pwd.h>
+#include <netdb.h>
 
 static char git_default_date[50];
 
@@ -64,9 +65,16 @@ int setup_ident(void)
 	git_default_email[len++] = '@';
 	gethostname(git_default_email + len, sizeof(git_default_email) - len);
 	if (!strchr(git_default_email+len, '.')) {
+		struct hostent *he = gethostbyname(git_default_email + len);
+		char *domainname;
+
 		len = strlen(git_default_email);
 		git_default_email[len++] = '.';
-		getdomainname(git_default_email+len, sizeof(git_default_email)-len);
+		if (he && (domainname = strchr(he->h_name, '.')))
+			strncpy(git_default_email + len, domainname + 1, sizeof(git_default_email) - len);
+		else
+			strncpy(git_default_email + len, "(none)", sizeof(git_default_email) - len);
+		git_default_email[sizeof(git_default_email) - 1] = 0;
 	}
 	/* And set the default date */
 	datestamp(git_default_date, sizeof(git_default_date));
Message 1 of 1 in “Use sensible domain name (the DNS one) when guessing ident information”
  1. Use sensible domain name (the DNS one) when guessing ident informationPetr Baudis, Oct 21, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.