X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Fmts.c;h=b52740df5608ca25aa02e9a32551f9806a192fc3;hp=dd193bc4e53a30a59b6d7479fcb1a965a8c8c4c6;hb=88b2142594d5ea1e8385dae5eca81eed1018c555;hpb=33dc8211a72df0c27fa11220f3b27583cd1c7e49 diff --git a/sbr/mts.c b/sbr/mts.c index dd193bc..b52740d 100644 --- a/sbr/mts.c +++ b/sbr/mts.c @@ -7,19 +7,13 @@ */ #include /* for snprintf() */ -#include #include #include #include #include +#include #include - -#ifdef HAVE_SYS_UTSNAME_H -# include -#endif - -#define NOTOK (-1) -#define OK 0 +#include /* ** static prototypes @@ -39,25 +33,16 @@ LocalName(void) { static char buffer[BUFSIZ] = ""; struct addrinfo hints, *res; -#ifdef HAVE_UNAME - struct utsname name; -#endif /* check if we have cached the local name */ if (buffer[0]) return buffer; memset(buffer, 0, sizeof(buffer)); -#ifdef HAVE_UNAME - /* first get our local name */ - uname(&name); - strncpy(buffer, name.nodename, sizeof(buffer) - 1); -#else /* first get our local name */ gethostname(buffer, sizeof(buffer) - 1); -#endif - /* now fully qualify our name */ + /* now fully qualify our name */ memset(&hints, 0, sizeof(hints)); hints.ai_flags = AI_CANONNAME; hints.ai_family = PF_UNSPEC; @@ -71,34 +56,6 @@ LocalName(void) /* -** This is only for UUCP mail. It gets the hostname -** as part of the UUCP "domain". -*/ -char * -SystemName(void) -{ - static char buffer[BUFSIZ] = ""; - -#ifdef HAVE_UNAME - struct utsname name; -#endif - - /* check if we have cached the system name */ - if (buffer[0]) - return buffer; - -#ifdef HAVE_UNAME - uname(&name); - strncpy(buffer, name.nodename, sizeof(buffer)); -#else - gethostname(buffer, sizeof(buffer)); -#endif - - return buffer; -} - - -/* ** Get the username of current user */ char * @@ -153,29 +110,7 @@ getuserinfo(void) ** information in the GECOS field, like phone number. */ for (cp = tmp; *np != '\0' && *np != ',';) { -#ifndef BSD42 *cp++ = *np++; -#else /* BSD42 */ - /* - ** On BSD(-derived) systems, the system utilities that - ** deal with the GECOS field (finger, mail, sendmail, - ** etc.) translate any '&' character in it to the login name, - ** with the first letter capitalized. So, for instance, - ** fingering a user "bob" with the GECOS field "& Jones" - ** would reveal him to be "In real life: Bob Jones". - ** Surprisingly, though, the OS doesn't do the translation - ** for you, so we have to do it manually here. - */ - if (*np == '&') { /* blech! */ - strcpy(cp, pw->pw_name); - *cp = toupper(*cp); - while (*cp) - cp++; - np++; - } else { - *cp++ = *np++; - } -#endif /* BSD42 */ } *cp = '\0'; strncpy(username, pw->pw_name, sizeof(username));