X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=aft.c;h=df295246db0cf1d1d6e3d0b202d43c86332db0f6;hb=7bf76e7907de7836f75c299dc2e828364e4f114e;hp=f5830dacd0ce98836380bd89dcc5a28cc29cbd45;hpb=75695bba841fc43094ebc669418187080cea00e6;p=paraslash.git diff --git a/aft.c b/aft.c index f5830dac..df295246 100644 --- a/aft.c +++ b/aft.c @@ -696,7 +696,13 @@ static int get_local_time(uint64_t *seconds, char *buf, size_t size, return -E_STRFTIME; return 1; } - if (!strftime(buf, size, "%b %e %Y", tm)) + /* + * If the given time is more than six month away from the current time, + * we print only the year. The additional space character in the format + * string below makes the formated date align nicely with dates that + * contain the time (those written by the above strftime() statement). + */ + if (!strftime(buf, size, "%b %e %Y", tm)) return -E_STRFTIME; return 1; } @@ -1404,10 +1410,14 @@ int com_ls(struct command_context *cc) return -E_AFT_SYNTAX; } } - if (!strcmp(arg, "-p")) { + if (!strcmp(arg, "-p") || !strcmp(arg, "-F")) { flags |= LS_FLAG_FULL_PATH; continue; } + if (!strcmp(arg, "-b")) { + flags &= ~LS_FLAG_FULL_PATH; + continue; + } if (!strcmp(arg, "-a")) { flags |= LS_FLAG_ADMISSIBLE_ONLY; continue; @@ -2401,6 +2411,7 @@ static int com_setatt_callback(struct afs_callback_arg *aca) ) { char c; unsigned char bitnum; + uint64_t one = 1; len = strlen(p); ret = -E_ATTR_SYNTAX; @@ -2416,9 +2427,9 @@ static int com_setatt_callback(struct afs_callback_arg *aca) goto out; } if (c == '+') - cad.add_mask |= (1UL << bitnum); + cad.add_mask |= (one << bitnum); else - cad.del_mask |= (1UL << bitnum); + cad.del_mask |= (one << bitnum); } ret = -E_ATTR_SYNTAX; if (!cad.add_mask && !cad.del_mask)