| /* See LICENSE file for copyright and license details. */ |
| #include <libgen.h> |
| #include <stdio.h> |
| #include <string.h> |
| |
| #include "util.h" |
| |
| static void |
| usage(void) |
| { |
| eprintf("usage: %s path [suffix]\n", argv0); |
| } |
| |
| int |
| main(int argc, char *argv[]) |
| { |
| ssize_t off; |
| char *p; |
| |
| argv0 = argv[0], argc--, argv++; |
| |
| if (argc != 1 && argc != 2) |
| usage(); |
| |
| p = basename(argv[0]); |
| if (argc == 2) { |
| off = strlen(p) - strlen(argv[1]); |
| if (off > 0 && !strcmp(p + off, argv[1])) |
| p[off] = '\0'; |
| } |
| puts(p); |
| |
| return fshut(stdout, "<stdout>"); |
| } |