xref: /aosp_15_r20/external/musl/src/unistd/gethostname.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <unistd.h>
2*c9945492SAndroid Build Coastguard Worker #include <sys/utsname.h>
3*c9945492SAndroid Build Coastguard Worker 
gethostname(char * name,size_t len)4*c9945492SAndroid Build Coastguard Worker int gethostname(char *name, size_t len)
5*c9945492SAndroid Build Coastguard Worker {
6*c9945492SAndroid Build Coastguard Worker 	size_t i;
7*c9945492SAndroid Build Coastguard Worker 	struct utsname uts;
8*c9945492SAndroid Build Coastguard Worker 	if (uname(&uts)) return -1;
9*c9945492SAndroid Build Coastguard Worker 	if (len > sizeof uts.nodename) len = sizeof uts.nodename;
10*c9945492SAndroid Build Coastguard Worker 	for (i=0; i<len && (name[i] = uts.nodename[i]); i++);
11*c9945492SAndroid Build Coastguard Worker 	if (i && i==len) name[i-1] = 0;
12*c9945492SAndroid Build Coastguard Worker 	return 0;
13*c9945492SAndroid Build Coastguard Worker }
14