about summary refs log tree commit diff
path: root/cli/btinfo.c
diff options
context:
space:
mode:
Diffstat (limited to 'cli/btinfo.c')
-rw-r--r--cli/btinfo.c92
1 files changed, 0 insertions, 92 deletions
diff --git a/cli/btinfo.c b/cli/btinfo.c
deleted file mode 100644
index dfcddcb..0000000
--- a/cli/btinfo.c
+++ /dev/null
@@ -1,92 +0,0 @@
-#include <sys/types.h>
-
-#include <errno.h>
-#include <getopt.h>
-#include <inttypes.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include "metainfo.h"
-#include "subr.h"
-
-static void
-usage()
-{
-    fprintf(stderr, "Usage: btinfo file ...\n\n");
-    exit(1);
-}
-
-static struct option longopts[] = {
-    { "help", no_argument, NULL, 1 },
-    { NULL, 0, NULL, 0 }
-};
-
-static void
-print_metainfo(const char *mi)
-{
-    uint8_t hash[20];
-    char hex[SHAHEXSIZE];
-    char *name = mi_name(mi);
-    unsigned nfiles = mi_nfiles(mi);
-    struct mi_file *files = mi_files(mi);
-    struct mi_announce *ann = mi_announce(mi);
-    printf("Name: %s\n", name);
-    printf("Info hash: %s\n", bin2hex(mi_info_hash(mi, hash), hex, 20));
-    printf("Tracker URLs: [ ");
-    for (int i = 0; i < ann->ntiers; i++) {
-        printf("[ ");
-        for (int j = 0; j < ann->tiers[i].nurls; j++)
-            printf("%s ", ann->tiers[i].urls[j]);
-        printf("] ");
-    }
-    printf("]\n");
-    printf("Number of pieces: %lu\n", (unsigned long)mi_npieces(mi));
-    printf("Piece size: %lld\n", (long long)mi_piece_length(mi));
-    printf("Total size: %lld\n", (long long)mi_total_length(mi));
-    printf("Number of files: %u\n", nfiles);
-    printf("Files:\n");
-    for (int i = 0; i < nfiles; i++) {
-        printf("%s (%lld)\n",
-            files[i].path, (long long)files[i].length);
-    }
-    printf("\n");
-    free(name);
-    mi_free_files(nfiles, files);
-    mi_free_announce(ann);
-}
-
-int
-main(int argc, char **argv)
-{
-    int ch;
-
-    srandom(time(NULL));
-    while ((ch = getopt_long(argc, argv, "", longopts, NULL)) != -1)
-        usage();
-
-    argc -= optind;
-    argv += optind;
-
-    if (argc < 1)
-        usage();
-
-    while (argc > 0) {
-        char *mi = NULL;
-
-        if ((mi = mi_load(*argv, NULL)) == NULL) {
-            fprintf(stderr, "failed to load torrent file '%s' (%s).\n",
-                *argv, strerror(errno));
-            exit(1);
-        }
-
-        print_metainfo(mi);
-        free(mi);
-
-        argc--;
-        argv++;
-    }
-
-    return 0;
-}