mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-22 17:24:23 +01:00
b1ebdd50cb
These are the start of a lot of work to clean up the FreeBSD eBones code. these changes include, but are not limited to: - Create prototypes for all the library routines - Make all the libraries compile clean with -Wall set - Fix numerous small bugs shown up in the above process - Prepare the code for libdes's removal to secure/ - add register, registerd and make_keypair to the make Lots more will follow in days to come. OK'ed by: rgrimes
69 lines
1.7 KiB
C
69 lines
1.7 KiB
C
/*
|
|
* Copyright 1987, 1988 by the Massachusetts Institute of Technology.
|
|
* For copying and distribution information, please see the file
|
|
* <Copyright.MIT>.
|
|
*
|
|
* from: k_gethostname.c,v 4.1 88/12/01 14:04:42 jtkohl Exp $
|
|
* $Id: k_gethostname.c,v 1.3 1995/07/18 16:38:51 mark Exp $
|
|
*/
|
|
|
|
#if 0
|
|
#ifndef lint
|
|
static char rcsid[] =
|
|
"$Id: k_gethostname.c,v 1.3 1995/07/18 16:38:51 mark Exp $";
|
|
#endif /* lint */
|
|
#endif
|
|
|
|
#include <unistd.h>
|
|
|
|
#ifndef PC
|
|
#ifndef BSD42
|
|
/* teach me how to k_gethostname for your system here */
|
|
#endif
|
|
#endif
|
|
|
|
#ifdef PC
|
|
#include <stdio.h>
|
|
typedef long in_name;
|
|
#include "custom.h" /* where is this file? */
|
|
extern get_custom();
|
|
#define LEN 64 /* just a guess */
|
|
#endif /* PC */
|
|
|
|
/*
|
|
* Return the local host's name in "name", up to "namelen" characters.
|
|
* "name" will be null-terminated if "namelen" is big enough.
|
|
* The return code is 0 on success, -1 on failure. (The calling
|
|
* interface is identical to gethostname(2).)
|
|
*
|
|
* Currently defined for BSD 4.2 and PC. The BSD version just calls
|
|
* gethostname(); the PC code was taken from "kinit.c", and may or may
|
|
* not work.
|
|
*/
|
|
|
|
int k_gethostname(char *name, int namelen)
|
|
{
|
|
#ifdef BSD42
|
|
return gethostname(name, namelen);
|
|
#endif
|
|
|
|
#ifdef PC
|
|
char buf[LEN];
|
|
char b1, b2, b3, b4;
|
|
register char *ptr;
|
|
|
|
get_custom(); /* should check for errors,
|
|
* return -1 on failure */
|
|
ptr = (char *) &(custom.c_me);
|
|
b1 = *ptr++;
|
|
b2 = *ptr++;
|
|
b3 = *ptr++;
|
|
b4 = *ptr;
|
|
(void) sprintf(buf,"PC address %d.%d.%d.%d",b1,b2,b3,b4);
|
|
if (strlen(buf) > namelen)
|
|
fprintf(stderr, "gethostname: namelen too small; truncating");
|
|
strnpcy(name, buf, namelen);
|
|
return 0;
|
|
#endif
|
|
}
|