507 return str; |
505 return str; |
508 } |
506 } |
509 |
507 |
510 void ls_print_list_elm(DavResource *res, CmdArgs *a) { |
508 void ls_print_list_elm(DavResource *res, CmdArgs *a) { |
511 int recursive = cmd_getoption(a, "recursive") ? 1 : 0; |
509 int recursive = cmd_getoption(a, "recursive") ? 1 : 0; |
|
510 int show_all = cmd_getoption(a, "all") ? 1 : 0; |
|
511 if(res->name[0] == '.' && !show_all) { |
|
512 return; |
|
513 } |
512 |
514 |
513 char flags[16]; |
515 char flags[16]; |
514 memset(flags, '-', 15); |
516 memset(flags, '-', 15); |
515 flags[2] = '\0'; |
517 flags[2] = '\0'; |
516 |
518 |
550 free(size); |
552 free(size); |
551 |
553 |
552 if(recursive) { |
554 if(recursive) { |
553 DavResource *child = res->children; |
555 DavResource *child = res->children; |
554 while(child) { |
556 while(child) { |
555 ls_print_list_elm(child, a); |
557 //ls_print_list_elm(child, a); |
|
558 if(child->name[0] != '.' || show_all) { |
|
559 ls_print_list_elm(child, a); |
|
560 } |
556 child = child->next; |
561 child = child->next; |
557 } |
562 } |
558 } |
563 } |
559 } |
564 } |
560 |
565 |
561 void ls_print_elm(DavResource *res, CmdArgs *a) { |
566 void ls_print_elm(DavResource *res, CmdArgs *a) { |
562 int recursive = cmd_getoption(a, "recursive") ? 1 : 0; |
567 int recursive = cmd_getoption(a, "recursive") ? 1 : 0; |
|
568 int show_all = cmd_getoption(a, "all") ? 1 : 0; |
|
569 if(res->name[0] == '.' && !show_all) { |
|
570 return; |
|
571 } |
|
572 |
563 char *name = recursive ? res->path+1 : res->name; |
573 char *name = recursive ? res->path+1 : res->name; |
564 printf("%s\n", name); |
574 printf("%s\n", name); |
565 if(recursive) { |
575 if(recursive) { |
566 DavResource *child = res->children; |
576 DavResource *child = res->children; |
567 while(child) { |
577 while(child) { |