#include "common.h"
#include <stdlib.h>
 
{
  int i;
  if(folderlist==NULL) {
    return;
  }
 
  for(i=0;i<level;i++) printf("  ");
 
  printf(
"%s\n", folderlist->
name);
 
  dump_folder_list(folderlist->
child, level+1);
  dump_folder_list(folderlist->
sibling, level);
}
 
int main (int argc, char **argv)
{
  int numrawdevices;
  int i;
 
  printf("Attempting to connect device(s)\n");
 
  case LIBMTP_ERROR_NO_DEVICE_ATTACHED:
    printf("mtp-folders: no devices found\n");
    return 0;
  case LIBMTP_ERROR_CONNECTING:
    fprintf(stderr, "mtp-folders: There has been an error connecting. Exit\n");
    return 1;
  case LIBMTP_ERROR_MEMORY_ALLOCATION:
    fprintf(stderr, "mtp-folders: Memory Allocation Error. Exit\n");
    return 1;
 
  
  case LIBMTP_ERROR_GENERAL:
  default:
    fprintf(stderr, "mtp-folders: Unknown error, please report "
                    "this to the libmtp developers\n");
    return 1;
 
  
  case LIBMTP_ERROR_NONE:
    printf("mtp-folders: Successfully connected\n");
  }
 
  
  for (i = 0; i < numrawdevices; i++) {
    char *friendlyname;
    int ret;
 
    device = LIBMTP_Open_Raw_Device(&rawdevices[i]);
    if (device == NULL) {
      fprintf(stderr, "Unable to open raw device %d\n", i);
      continue;
    }
 
    
    if (friendlyname == NULL) {
      printf("Friendly name: (NULL)\n");
    } else {
      printf("Friendly name: %s\n", friendlyname);
    }
 
 
    
    if (ret != 0) {
      perror("LIBMTP_Get_Storage()\n");
      continue;
    }
 
    
    for (storage = device->
storage; storage != 0; storage = storage->
next) {
 
 
 
      if (folders == NULL) {
        fprintf(stdout, "No folders found\n");
      } else {
        dump_folder_list(folders,0);
      }
    }
  }
 
  printf("OK.\n");
 
  return 0;
}
void LIBMTP_FreeMemory(void *mem)
Definition: libmtp.c:9471
void LIBMTP_Release_Device(LIBMTP_mtpdevice_t *device)
Definition: libmtp.c:2513
void LIBMTP_Dump_Errorstack(LIBMTP_mtpdevice_t *device)
Definition: libmtp.c:2660
void LIBMTP_Clear_Errorstack(LIBMTP_mtpdevice_t *device)
Definition: libmtp.c:2633
char * LIBMTP_Get_Friendlyname(LIBMTP_mtpdevice_t *device)
Definition: libmtp.c:3746
int LIBMTP_Get_Storage(LIBMTP_mtpdevice_t *device, int const sortby)
Definition: libmtp.c:4194
LIBMTP_error_number_t LIBMTP_Detect_Raw_Devices(LIBMTP_raw_device_t **, int *)
Definition: libopenusb1-glue.c:592
LIBMTP_folder_t * LIBMTP_Get_Folder_List_For_Storage(LIBMTP_mtpdevice_t *device, uint32_t const storage)
Definition: libmtp.c:7455
void LIBMTP_destroy_folder_t(LIBMTP_folder_t *folder)
Definition: libmtp.c:7355
void LIBMTP_Init(void)
Definition: libmtp.c:774
char * StorageDescription
Definition: libmtp.h:798
LIBMTP_devicestorage_t * next
Definition: libmtp.h:800
uint32_t id
Definition: libmtp.h:791
uint32_t folder_id
Definition: libmtp.h:767
LIBMTP_folder_t * sibling
Definition: libmtp.h:771
LIBMTP_folder_t * child
Definition: libmtp.h:772
char * name
Definition: libmtp.h:770
LIBMTP_devicestorage_t * storage
Definition: libmtp.h:656