OpenWrt – Blame information for rev 4
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
4 | office | 1 | --- a/jffsX-utils/mkfs.jffs2.c |
2 | +++ b/jffsX-utils/mkfs.jffs2.c |
||
3 | @@ -109,7 +109,7 @@ static char *rootdir = default_rootdir; |
||
4 | static int verbose = 0; |
||
5 | static int squash_uids = 0; |
||
6 | static int squash_perms = 0; |
||
7 | -static int fake_times = 0; |
||
8 | +static time_t fixed_timestamp = -1; |
||
9 | int target_endian = __BYTE_ORDER; |
||
10 | |||
11 | static uint32_t find_hardlink(struct filesystem_entry *e) |
||
12 | @@ -250,8 +250,8 @@ static struct filesystem_entry *add_host |
||
13 | mode &= ~(S_ISUID | S_ISGID); |
||
14 | } |
||
15 | } |
||
16 | - if (fake_times) { |
||
17 | - timestamp = 0; |
||
18 | + if (fixed_timestamp != -1) { |
||
19 | + timestamp = fixed_timestamp; |
||
20 | } |
||
21 | |||
22 | entry = xcalloc(1, sizeof(struct filesystem_entry)); |
||
23 | @@ -1557,6 +1557,20 @@ static void parse_image(void){ |
||
24 | close(in_fd); |
||
25 | } |
||
26 | |||
27 | +static void set_source_date_epoch() { |
||
28 | + char *env = getenv("SOURCE_DATE_EPOCH"); |
||
29 | + char *endptr = env; |
||
30 | + errno = 0; |
||
31 | + if (env && *env) { |
||
32 | + fixed_timestamp = strtoull(env, &endptr, 10); |
||
33 | + if (errno || (endptr && *endptr != '\0')) { |
||
34 | + fprintf(stderr, "Invalid SOURCE_DATE_EPOCH"); |
||
35 | + exit(1); |
||
36 | + } |
||
37 | + } |
||
38 | +} |
||
39 | + |
||
40 | + |
||
41 | int main(int argc, char **argv) |
||
42 | { |
||
43 | int c, opt; |
||
44 | @@ -1575,6 +1589,7 @@ int main(int argc, char **argv) |
||
45 | warn_page_size = 1; /* warn user if page size not 4096 */ |
||
46 | |||
47 | jffs2_compressors_init(); |
||
48 | + set_source_date_epoch(); |
||
49 | |||
50 | while ((opt = getopt_long(argc, argv, |
||
51 | "D:d:r:s:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0) |
||
52 | @@ -1625,7 +1640,7 @@ int main(int argc, char **argv) |
||
53 | break; |
||
54 | |||
55 | case 'f': |
||
56 | - fake_times = 1; |
||
57 | + fixed_timestamp = 0; |
||
58 | break; |
||
59 | |||
60 | case 'h': |