inspect: Refuse to download software hive if it is huge.
[libguestfs.git] / daemon / ls.c
index 8ae150b..0af2356 100644 (file)
 #include "actions.h"
 
 char **
-do_ls (char *path)
+do_ls (const char *path)
 {
   char **r = NULL;
   int size = 0, alloc = 0;
   DIR *dir;
   struct dirent *d;
 
-  NEED_ROOT (NULL);
-  ABS_PATH (path, return NULL);
-
   CHROOT_IN;
   dir = opendir (path);
   CHROOT_OUT;
@@ -50,7 +47,7 @@ do_ls (char *path)
   }
 
   while ((d = readdir (dir)) != NULL) {
-    if (strcmp (d->d_name, ".") == 0 || strcmp (d->d_name, "..") == 0)
+    if (STREQ (d->d_name, ".") || STREQ (d->d_name, ".."))
       continue;
 
     if (add_string (&r, &size, &alloc, d->d_name) == -1) {
@@ -78,21 +75,15 @@ do_ls (char *path)
  * necessarily exist in the chroot), this command can be used to escape
  * from the sysroot (eg. 'll /..').  This command is not meant for
  * serious use anyway, just for quick interactive sessions.
- *
- * FIXME: eventually, provide a "debug ll" command that would list files
- * in the appliance.
  */
 
 char *
-do_ll (char *path)
+do_ll (const char *path)
 {
   int r;
   char *out, *err;
   char *spath;
 
-  NEED_ROOT (NULL);
-  ABS_PATH (path, NULL);
-
   spath = sysroot_path (path);
   if (!spath) {
     reply_with_perror ("malloc");