X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Finspect.c;h=67eb65f541956d9a35e279dc1b53d16be0ca534b;hb=c46bedf925cd9c6c9a9cbaee115358fd1dffcbfe;hp=62cbc8551f40d1ee666a628e2ad0f6d6f23cf1fb;hpb=5332515db3ed87716d702ef2b973816a73ab5702;p=libguestfs.git diff --git a/src/inspect.c b/src/inspect.c index 62cbc85..67eb65f 100644 --- a/src/inspect.c +++ b/src/inspect.c @@ -123,6 +123,15 @@ guestfs__inspect_os (guestfs_h *g) return ret; } +static int +compare_strings (const void *vp1, const void *vp2) +{ + const char *s1 = * (char * const *) vp1; + const char *s2 = * (char * const *) vp2; + + return strcmp (s1, s2); +} + char ** guestfs__inspect_get_roots (guestfs_h *g) { @@ -151,6 +160,8 @@ guestfs__inspect_get_roots (guestfs_h *g) } ret[count] = NULL; + qsort (ret, count, sizeof (char *), compare_strings); + return ret; } @@ -163,9 +174,10 @@ guestfs__inspect_get_type (guestfs_h *g, const char *root) char *ret; switch (fs->type) { + case OS_TYPE_FREEBSD: ret = safe_strdup (g, "freebsd"); break; case OS_TYPE_LINUX: ret = safe_strdup (g, "linux"); break; + case OS_TYPE_NETBSD: ret = safe_strdup (g, "netbsd"); break; case OS_TYPE_WINDOWS: ret = safe_strdup (g, "windows"); break; - case OS_TYPE_FREEBSD: ret = safe_strdup (g, "freebsd"); break; case OS_TYPE_UNKNOWN: default: ret = safe_strdup (g, "unknown"); break; } @@ -456,6 +468,7 @@ guestfs__inspect_get_package_format (guestfs_h *g, const char *root) case OS_PACKAGE_FORMAT_PACMAN: ret = safe_strdup (g, "pacman"); break; case OS_PACKAGE_FORMAT_EBUILD: ret = safe_strdup (g, "ebuild"); break; case OS_PACKAGE_FORMAT_PISI: ret = safe_strdup (g, "pisi"); break; + case OS_PACKAGE_FORMAT_PKGSRC: ret = safe_strdup (g, "pkgsrc"); break; case OS_PACKAGE_FORMAT_UNKNOWN: default: ret = safe_strdup (g, "unknown");