summaryrefslogtreecommitdiff
path: root/usr/src/lib/libcmd/common/cksum.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/libcmd/common/cksum.c')
-rw-r--r--usr/src/lib/libcmd/common/cksum.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/usr/src/lib/libcmd/common/cksum.c b/usr/src/lib/libcmd/common/cksum.c
index 2be23e4a93..c42e865b09 100644
--- a/usr/src/lib/libcmd/common/cksum.c
+++ b/usr/src/lib/libcmd/common/cksum.c
@@ -1,7 +1,7 @@
/***********************************************************************
* *
* This software is part of the ast package *
-* Copyright (c) 1992-2009 AT&T Intellectual Property *
+* Copyright (c) 1992-2010 AT&T Intellectual Property *
* and is licensed under the *
* Common Public License, Version 1.0 *
* by AT&T Intellectual Property *
@@ -27,7 +27,7 @@
*/
static const char usage[] =
-"[-?\n@(#)$Id: sum (AT&T Research) 2009-07-02 $\n]"
+"[-?\n@(#)$Id: sum (AT&T Research) 2009-11-28 $\n]"
USAGE_LICENSE
"[+NAME?cksum,md5sum,sum - print file checksum and block count]"
"[+DESCRIPTION?\bsum\b lists the checksum, and for most methods the block"
@@ -113,7 +113,7 @@ USAGE_LICENSE
#include <sum.h>
#include <ls.h>
#include <modex.h>
-#include <fts.h>
+#include <fts_fix.h>
#include <error.h>
typedef struct State_s /* program state */
@@ -453,8 +453,7 @@ b_cksum(int argc, register char** argv, void* context)
cmdinit(argc, argv, context, ERROR_CATALOG, ERROR_NOTIFY);
memset(&state, 0, sizeof(state));
- setlocale(LC_ALL, "");
- flags = fts_flags() | FTS_TOP | FTS_NOPOSTORDER | FTS_NOSEEDOTDIR;
+ flags = fts_flags() | FTS_TOP | FTS_NOPOSTORDER;
state.flags = SUM_SIZE;
state.warn = 1;
logical = 1;
@@ -555,7 +554,10 @@ b_cksum(int argc, register char** argv, void* context)
*/
if (logical)
+ {
flags &= ~(FTS_META|FTS_PHYSICAL);
+ flags |= FTS_SEEDOTDIR;
+ }
if (state.permissions)
{
state.uid = geteuid();