patch-2.2.19 linux/fs/smbfs/proc.c
Next file: linux/include/asm-alpha/mmu_context.h
Previous file: linux/fs/smbfs/ChangeLog
Back to the patch index
Back to the overall index
- Lines: 23
- Date:
Sun Mar 25 11:37:39 2001
- Orig file:
v2.2.18/fs/smbfs/proc.c
- Orig date:
Sun Mar 25 11:28:36 2001
diff -u --new-file --recursive --exclude-from /usr/src/exclude v2.2.18/fs/smbfs/proc.c linux/fs/smbfs/proc.c
@@ -280,7 +280,9 @@
int month, year;
time_t secs;
- month = ((date >> 5) & 15) - 1;
+ /* first subtract and mask after that... Otherwise, if
+ date == 0, bad things happen */
+ month = ((date >> 5) - 1) & 15;
year = date >> 9;
secs = (time & 31) * 2 + 60 * ((time >> 5) & 63) + (time >> 11) * 3600 + 86400 *
((date & 31) - 1 + day_n[month] + (year / 4) + year * 365 - ((year & 3) == 0 &&
@@ -299,6 +301,11 @@
int day, year, nl_day, month;
unix_date = utc2local(server, unix_date);
+
+ /* Jan 1 GMT 00:00:00 1980. But what about another time zone? */
+ if (unix_date < 315532800)
+ unix_date = 315532800;
+
*time = (unix_date % 60) / 2 +
(((unix_date / 60) % 60) << 5) +
(((unix_date / 3600) % 24) << 11);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)