Annotation of coherent/d/etc/SYSVcron/src/gethost.c, revision 1.1

1.1     ! root        1: /* gethostname.c
        !             2:        
        !             3:        Get hostname and domainname from the files which define them
        !             4:        in /etc.
        !             5:        by La Monte H. Yarroll ([email protected])
        !             6:        Copyright (c) 1991 by Mark Williams Company
        !             7:        Permission to use and redistribute is granted, provided the
        !             8:        above copyright notice appears on all copies.
        !             9: */
        !            10: 
        !            11: #include <stdio.h>
        !            12: #include "cron.h"
        !            13: 
        !            14: FILE *fopen();
        !            15: 
        !            16: #define ETC_HOSTNAME "/etc/uucpname"
        !            17: #define ETC_DOMAIN "/etc/domain"
        !            18: #define NIL ((unsigned char) NULL)
        !            19: 
        !            20: int gethostname(name, bufsize)
        !            21: unsigned char  *name;          /* Host name */
        !            22: int            bufsize;        /* Maximum size of the host name */
        !            23: {
        !            24:        int     i;
        !            25:        FILE    *fp;
        !            26:        
        !            27:        if ( (fp = fopen(ETC_HOSTNAME, "r")) == NULL ) {
        !            28:                Dprint("gethostname:  Can't open %s.\n", ETC_HOSTNAME);
        !            29:                return (-1);
        !            30:        }
        !            31: 
        !            32:        fgets(name, bufsize, fp);
        !            33:        fclose(fp);
        !            34: 
        !            35:        /* Truncate at first newline. */
        !            36:        for (i = 0;
        !            37:             (i < bufsize) && (name[i] != NIL) && (name[i] != '\n');
        !            38:             ++i ) {
        !            39:        }
        !            40: 
        !            41:        if (i >= bufsize) {
        !            42:                Dprint("gethostname:  %s\n", 
        !            43:                        "Found neither a NULL nor a newline.");
        !            44:                return (-1);
        !            45:        } else {
        !            46:                name[i] = NIL;
        !            47:        }
        !            48:        return (0);
        !            49: }
        !            50: 
        !            51: int getdomain(name, bufsize)
        !            52: unsigned char  *name;          /* Domain name */
        !            53: int            bufsize;        /* Maximum size of the domain name */
        !            54: {
        !            55:        int     i;      
        !            56:        FILE    *fp;    
        !            57:        
        !            58:        if ( (fp = fopen(ETC_DOMAIN, "r")) == NULL ) {
        !            59:                Dprint("getdomainname:  Can't open %s.\n", ETC_DOMAIN);
        !            60:                return (-1);
        !            61:        }
        !            62: 
        !            63:        fgets(name, bufsize, fp);
        !            64:        fclose(fp);
        !            65: 
        !            66:        /* Truncate at first newline. */
        !            67:        for (i = 0;
        !            68:             (i < bufsize) && (name[i] != NIL) && (name[i] != '\n');
        !            69:             ++i ) {
        !            70:        }
        !            71: 
        !            72:        if (i >= bufsize) {
        !            73:                Dprint("getdomain:  %s\n", 
        !            74:                        "Found neither a NULL nor a newline.");
        !            75:                return (-1);
        !            76:        } else {
        !            77:                name[i] = NIL;
        !            78:        }
        !            79:        return (0);
        !            80: }
        !            81: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.