1 /* Return OS ABI name 2 Copyright (C) 2001, 2002 Red Hat, Inc. 3 Written by Ulrich Drepper <drepper (at) redhat.com>, 2001. 4 5 This program is Open Source software; you can redistribute it and/or 6 modify it under the terms of the Open Software License version 1.0 as 7 published by the Open Source Initiative. 8 9 You should have received a copy of the Open Software License along 10 with this program; if not, you may obtain a copy of the Open Software 11 License version 1.0 from http://www.opensource.org/licenses/osl.php or 12 by writing the Open Source Initiative c/o Lawrence Rosen, Esq., 13 3001 King Ranch Road, Ukiah, CA 95482. */ 14 15 #ifdef HAVE_CONFIG_H 16 # include <config.h> 17 #endif 18 19 #include <stdio.h> 20 #include <libeblP.h> 21 22 23 const char * 24 ebl_osabi_name (ebl, osabi, buf, len) 25 Ebl *ebl; 26 int osabi; 27 char *buf; 28 size_t len; 29 { 30 const char *res = ebl != NULL ? ebl->osabi_name (osabi, buf, len) : NULL; 31 32 if (res == NULL) 33 { 34 if (osabi == ELFOSABI_NONE) 35 res = "UNIX - System V"; 36 else if (osabi == ELFOSABI_HPUX) 37 res = "HP/UX"; 38 else if (osabi == ELFOSABI_NETBSD) 39 res = "NetBSD"; 40 else if (osabi == ELFOSABI_LINUX) 41 res = "Linux"; 42 else if (osabi == ELFOSABI_SOLARIS) 43 res = "Solaris"; 44 else if (osabi == ELFOSABI_AIX) 45 res = "AIX"; 46 else if (osabi == ELFOSABI_IRIX) 47 res = "Irix"; 48 else if (osabi == ELFOSABI_FREEBSD) 49 res = "FreeBSD"; 50 else if (osabi == ELFOSABI_TRU64) 51 res = "TRU64"; 52 else if (osabi == ELFOSABI_MODESTO) 53 res = "Modesto"; 54 else if (osabi == ELFOSABI_OPENBSD) 55 res = "OpenBSD"; 56 else if (osabi == ELFOSABI_ARM) 57 res = "Arm"; 58 else if (osabi == ELFOSABI_STANDALONE) 59 res = gettext ("Stand alone"); 60 else 61 { 62 snprintf (buf, len, "%s: %d", gettext ("<unknown>"), osabi); 63 64 res = buf; 65 } 66 } 67 68 return res; 69 } 70