Contents of /trunk/mkinitrd-magellan/busybox/archival/libunarchive/header_verbose_list.c
Parent Directory | Revision Log
Revision 1123 -
(show annotations)
(download)
Wed Aug 18 21:56:57 2010 UTC (13 years, 9 months ago) by niro
File MIME type: text/plain
File size: 1614 byte(s)
Wed Aug 18 21:56:57 2010 UTC (13 years, 9 months ago) by niro
File MIME type: text/plain
File size: 1614 byte(s)
-updated to busybox-1.17.1
1 | /* vi: set sw=4 ts=4: */ |
2 | /* |
3 | * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. |
4 | */ |
5 | |
6 | #include "libbb.h" |
7 | #include "unarchive.h" |
8 | |
9 | void FAST_FUNC header_verbose_list(const file_header_t *file_header) |
10 | { |
11 | struct tm tm_time; |
12 | struct tm *ptm = &tm_time; //localtime(&file_header->mtime); |
13 | |
14 | #if ENABLE_FEATURE_TAR_UNAME_GNAME |
15 | char uid[sizeof(int)*3 + 2]; |
16 | /*char gid[sizeof(int)*3 + 2];*/ |
17 | char *user; |
18 | char *group; |
19 | |
20 | localtime_r(&file_header->mtime, ptm); |
21 | |
22 | user = file_header->tar__uname; |
23 | if (user == NULL) { |
24 | sprintf(uid, "%u", (unsigned)file_header->uid); |
25 | user = uid; |
26 | } |
27 | group = file_header->tar__gname; |
28 | if (group == NULL) { |
29 | /*sprintf(gid, "%u", (unsigned)file_header->gid);*/ |
30 | group = utoa(file_header->gid); |
31 | } |
32 | printf("%s %s/%s %9"OFF_FMT"u %4u-%02u-%02u %02u:%02u:%02u %s", |
33 | bb_mode_string(file_header->mode), |
34 | user, |
35 | group, |
36 | file_header->size, |
37 | 1900 + ptm->tm_year, |
38 | 1 + ptm->tm_mon, |
39 | ptm->tm_mday, |
40 | ptm->tm_hour, |
41 | ptm->tm_min, |
42 | ptm->tm_sec, |
43 | file_header->name); |
44 | |
45 | #else /* !FEATURE_TAR_UNAME_GNAME */ |
46 | |
47 | localtime_r(&file_header->mtime, ptm); |
48 | |
49 | printf("%s %u/%u %9"OFF_FMT"u %4u-%02u-%02u %02u:%02u:%02u %s", |
50 | bb_mode_string(file_header->mode), |
51 | (unsigned)file_header->uid, |
52 | (unsigned)file_header->gid, |
53 | file_header->size, |
54 | 1900 + ptm->tm_year, |
55 | 1 + ptm->tm_mon, |
56 | ptm->tm_mday, |
57 | ptm->tm_hour, |
58 | ptm->tm_min, |
59 | ptm->tm_sec, |
60 | file_header->name); |
61 | |
62 | #endif /* FEATURE_TAR_UNAME_GNAME */ |
63 | |
64 | /* NB: GNU tar shows "->" for symlinks and "link to" for hardlinks */ |
65 | if (file_header->link_target) { |
66 | printf(" -> %s", file_header->link_target); |
67 | } |
68 | bb_putchar('\n'); |
69 | } |