getdomainname.c 312 B

1234567891011121314151617
  1. #define _GNU_SOURCE
  2. #include <unistd.h>
  3. #include <sys/utsname.h>
  4. #include <string.h>
  5. #include <errno.h>
  6. int getdomainname(char *name, size_t len)
  7. {
  8. struct utsname temp;
  9. uname(&temp);
  10. if (!len || strlen(temp.domainname) >= len) {
  11. errno = EINVAL;
  12. return -1;
  13. }
  14. strcpy(name, temp.domainname);
  15. return 0;
  16. }