mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-05 22:43:24 +00:00
450c68735d
other-writable dirs and other-writable-stick dirs. PR: ports/4853 Submitted by: bmc@WillsCreek.COM
195 lines
5.7 KiB
Plaintext
195 lines
5.7 KiB
Plaintext
*** src/Makefile.in.orig Sun Aug 10 17:14:46 1997
|
|
--- src/Makefile.in Sun Aug 10 19:14:33 1997
|
|
***************
|
|
*** 49,57 ****
|
|
EXTRAdir = $(bindir)
|
|
EXTRA_PROGRAMS = df mvdir
|
|
|
|
! bin_PROGRAMS = chgrp chown chmod cp dd dircolors du \
|
|
! ginstall ln dir vdir ls mkdir \
|
|
! mkfifo mknod mv rm rmdir sync touch @DF_PROG@
|
|
|
|
libexec_PROGRAMS = @MVDIR_PROG@
|
|
datadir = $(prefix)/@DATADIRNAME@
|
|
--- 49,55 ----
|
|
EXTRAdir = $(bindir)
|
|
EXTRA_PROGRAMS = df mvdir
|
|
|
|
! bin_PROGRAMS = dircolors gnuls
|
|
|
|
libexec_PROGRAMS = @MVDIR_PROG@
|
|
datadir = $(prefix)/@DATADIRNAME@
|
|
***************
|
|
*** 247,252 ****
|
|
--- 245,253 ----
|
|
$(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
|
|
else :; fi; \
|
|
done
|
|
+ ln -f $(bindir)/gnuls $(bindir)/linuxls
|
|
+ ln -f $(bindir)/gnuls $(bindir)/vdir
|
|
+ ln -f $(bindir)/gnuls $(bindir)/dir
|
|
|
|
uninstall-binPROGRAMS:
|
|
list="$(bin_PROGRAMS)"; for p in $$list; do \
|
|
***************
|
|
*** 392,398 ****
|
|
$(LINK) $(vdir_LDFLAGS) $(vdir_OBJECTS) $(vdir_LDADD) $(LIBS)
|
|
$(ls_OBJECTS): ../config.h
|
|
|
|
! ls: $(ls_OBJECTS) $(ls_DEPENDENCIES)
|
|
$(LINK) $(ls_LDFLAGS) $(ls_OBJECTS) $(ls_LDADD) $(LIBS)
|
|
$(mkdir_OBJECTS): ../config.h
|
|
|
|
--- 393,399 ----
|
|
$(LINK) $(vdir_LDFLAGS) $(vdir_OBJECTS) $(vdir_LDADD) $(LIBS)
|
|
$(ls_OBJECTS): ../config.h
|
|
|
|
! gnuls: $(ls_OBJECTS) $(ls_DEPENDENCIES)
|
|
$(LINK) $(ls_LDFLAGS) $(ls_OBJECTS) $(ls_LDADD) $(LIBS)
|
|
$(mkdir_OBJECTS): ../config.h
|
|
|
|
*** src/dircolors.c.orig Sun Jan 26 00:54:17 1997
|
|
--- src/dircolors.c Sat Oct 25 16:00:40 1997
|
|
***************
|
|
*** 72,84 ****
|
|
"NORMAL", "NORM", "FILE", "DIR", "LNK", "LINK",
|
|
"SYMLINK", "ORPHAN", "MISSING", "FIFO", "PIPE", "SOCK", "BLK", "BLOCK",
|
|
"CHR", "CHAR", "EXEC", "LEFT", "LEFTCODE", "RIGHT", "RIGHTCODE", "END",
|
|
! "ENDCODE", NULL
|
|
};
|
|
|
|
static const char *const ls_codes[] =
|
|
{
|
|
"no", "no", "fi", "di", "ln", "ln", "ln", "or", "mi", "pi", "pi",
|
|
"so", "bd", "bd", "cd", "cd", "ex", "lc", "lc", "rc", "rc", "ec", "ec"
|
|
};
|
|
|
|
static struct option const long_options[] =
|
|
--- 72,86 ----
|
|
"NORMAL", "NORM", "FILE", "DIR", "LNK", "LINK",
|
|
"SYMLINK", "ORPHAN", "MISSING", "FIFO", "PIPE", "SOCK", "BLK", "BLOCK",
|
|
"CHR", "CHAR", "EXEC", "LEFT", "LEFTCODE", "RIGHT", "RIGHTCODE", "END",
|
|
! "ENDCODE", "SUID", "SETUID", "SGID", "SETGID", "WRO", "WRITEOTHERS",
|
|
! "WT", "WROT", "WRITEOTHERSSTICKY", NULL
|
|
};
|
|
|
|
static const char *const ls_codes[] =
|
|
{
|
|
"no", "no", "fi", "di", "ln", "ln", "ln", "or", "mi", "pi", "pi",
|
|
"so", "bd", "bd", "cd", "cd", "ex", "lc", "lc", "rc", "rc", "ec", "ec"
|
|
+ "su", "su", "sg", "sg", "wo", "wo", "wo", "wt", "wt", "wt", NULL
|
|
};
|
|
|
|
static struct option const long_options[] =
|
|
*** src/ls.c.orig Sun Jan 26 00:56:10 1997
|
|
--- src/ls.c Sat Oct 25 16:00:30 1997
|
|
***************
|
|
*** 359,371 ****
|
|
enum indicator_no
|
|
{
|
|
C_LEFT, C_RIGHT, C_END, C_NORM, C_FILE, C_DIR, C_LINK, C_FIFO, C_SOCK,
|
|
! C_BLK, C_CHR, C_MISSING, C_ORPHAN, C_EXEC
|
|
};
|
|
|
|
static const char *const indicator_name[]=
|
|
{
|
|
"lc", "rc", "ec", "no", "fi", "di", "ln", "pi", "so",
|
|
! "bd", "cd", "mi", "or", "ex", NULL
|
|
};
|
|
|
|
struct col_ext_type
|
|
--- 359,371 ----
|
|
enum indicator_no
|
|
{
|
|
C_LEFT, C_RIGHT, C_END, C_NORM, C_FILE, C_DIR, C_LINK, C_FIFO, C_SOCK,
|
|
! C_BLK, C_CHR, C_MISSING, C_ORPHAN, C_EXEC, C_UID, C_GID, C_WRO, C_WT
|
|
};
|
|
|
|
static const char *const indicator_name[]=
|
|
{
|
|
"lc", "rc", "ec", "no", "fi", "di", "ln", "pi", "so",
|
|
! "bd", "cd", "mi", "or", "ex", "su", "sg", "wo", "wt", NULL
|
|
};
|
|
|
|
struct col_ext_type
|
|
***************
|
|
*** 390,396 ****
|
|
{ LEN_STR_PAIR ("01;33") }, /* cd: Char device: bright yellow */
|
|
{ 0, NULL }, /* mi: Missing file: undefined */
|
|
{ 0, NULL }, /* or: Orphanned symlink: undefined */
|
|
! { LEN_STR_PAIR ("01;32") } /* ex: Executable: bright green */
|
|
};
|
|
|
|
/* FIXME: comment */
|
|
--- 390,400 ----
|
|
{ LEN_STR_PAIR ("01;33") }, /* cd: Char device: bright yellow */
|
|
{ 0, NULL }, /* mi: Missing file: undefined */
|
|
{ 0, NULL }, /* or: Orphanned symlink: undefined */
|
|
! { LEN_STR_PAIR ("01;32") }, /* ex: Executable: bright green */
|
|
! { LEN_STR_PAIR ("37;41") }, /* su: setuid: white on red */
|
|
! { LEN_STR_PAIR ("30;43") }, /* sg: setgid: black on yellow */
|
|
! { LEN_STR_PAIR ("37;44") }, /* wo: writeable-other:white on blue */
|
|
! { LEN_STR_PAIR ("37;42") }, /* wt: wo w/ sticky: white on green */
|
|
};
|
|
|
|
/* FIXME: comment */
|
|
***************
|
|
*** 2407,2413 ****
|
|
else
|
|
{
|
|
if (S_ISDIR (mode))
|
|
! type = C_DIR;
|
|
|
|
#ifdef S_ISLNK
|
|
else if (S_ISLNK (mode))
|
|
--- 2411,2424 ----
|
|
else
|
|
{
|
|
if (S_ISDIR (mode))
|
|
! {
|
|
! if ((mode && MODE_WT) == MODE_WT)
|
|
! type = C_WT;
|
|
! else if ((mode && MODE_WRO) == MODE_WRO)
|
|
! type = C_WRO;
|
|
! else
|
|
! type = C_DIR;
|
|
! }
|
|
|
|
#ifdef S_ISLNK
|
|
else if (S_ISLNK (mode))
|
|
***************
|
|
*** 2435,2441 ****
|
|
type = C_CHR;
|
|
#endif
|
|
|
|
! if (type == C_FILE && (mode & S_IXUGO) != 0)
|
|
type = C_EXEC;
|
|
|
|
/* Check the file's suffix only if still classified as C_FILE. */
|
|
--- 2446,2458 ----
|
|
type = C_CHR;
|
|
#endif
|
|
|
|
! if ((type == C_FILE) && ((mode & S_ISUID) != 0))
|
|
! type = C_UID;
|
|
!
|
|
! else if ((type == C_FILE) && ((mode & S_ISGID) != 0))
|
|
! type = C_GID;
|
|
!
|
|
! else if (type == C_FILE && (mode & S_IXUGO) != 0)
|
|
type = C_EXEC;
|
|
|
|
/* Check the file's suffix only if still classified as C_FILE. */
|
|
*** src/ls.h.orig Wed Jun 16 11:24:58 1993
|
|
--- src/ls.h Sat Oct 25 16:00:35 1997
|
|
***************
|
|
*** 7,10 ****
|
|
--- 7,13 ----
|
|
/* This is for the `vdir' program. */
|
|
#define LS_LONG_FORMAT 3
|
|
|
|
+ #define MODE_WT 01002
|
|
+ #define MODE_WRO 02
|
|
+
|
|
extern int ls_mode;
|