From 9e51eca782b8e17a1ec87944ccbeac94c7c8e2a1 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Sat, 9 Jan 1999 16:32:31 +0000 Subject: [PATCH] ChangeLog, message.c: message.c (safe_print): New function which prints strings, converting non-printable characters using the '^' and M-notation. This function is now used to print directory name entries and pathnames. ChangeLog: Update for release of E2fsprogs 1.14. --- ChangeLog | 4 ++++ debugfs/ChangeLog | 4 ++++ doc/ChangeLog | 4 ++++ e2fsck/ChangeLog | 7 +++++++ e2fsck/message.c | 30 ++++++++++++++++++++++++++++-- include/linux/ChangeLog | 4 ++++ install-utils/ChangeLog | 4 ++++ lib/ChangeLog | 4 ++++ lib/e2p/ChangeLog | 4 ++++ lib/et/ChangeLog | 4 ++++ lib/ext2fs/ChangeLog | 4 ++++ lib/ss/ChangeLog | 4 ++++ lib/uuid/ChangeLog | 4 ++++ misc/ChangeLog | 4 ++++ resize/ChangeLog | 4 ++++ tests/ChangeLog | 4 ++++ tests/progs/ChangeLog | 4 ++++ util/ChangeLog | 4 ++++ 18 files changed, 99 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4e540f0..d13d0c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 1999-01-09 Theodore Ts'o + * Release of E2fsprogs 1.14 + +1999-01-09 Theodore Ts'o + * configure.in (YEAR): Allow a 4-digit year for the version date, so we can be Y2K politically correct. (The date isn't used for anything except display purposes, but it should diff --git a/debugfs/ChangeLog b/debugfs/ChangeLog index 2cff5a8..50c0c8e 100644 --- a/debugfs/ChangeLog +++ b/debugfs/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/doc/ChangeLog b/doc/ChangeLog index 4abdce9..0e050f8 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/e2fsck/ChangeLog b/e2fsck/ChangeLog index 481f372..56cbcad 100644 --- a/e2fsck/ChangeLog +++ b/e2fsck/ChangeLog @@ -1,3 +1,10 @@ +1999-01-09 Theodore Ts'o + + * message.c (safe_print): New function which prints strings, + converting non-printable characters using the '^' and + M-notation. This function is now used to print directory + name entries and pathnames. + Mon Jan 4 02:28:59 1999 Theodore Y. Ts'o * unix.c (main): Reset the context before calling ext2fs_close(), diff --git a/e2fsck/message.c b/e2fsck/message.c index c839bbf..1e440c5 100644 --- a/e2fsck/message.c +++ b/e2fsck/message.c @@ -131,6 +131,32 @@ static const char *special_inode_name[] = }; /* + * This function does "safe" printing. It will convert non-printable + * ASCII characters using '^' and M- notation. + */ +static void safe_print(const unsigned char *cp, int len) +{ + unsigned char ch; + + if (len < 0) + len = strlen(cp); + + while (len--) { + ch = *cp++; + if (ch > 128) { + fputs("M-", stdout); + ch -= 128; + } + if (ch < 32) { + fputc('^', stdout); + ch += 32; + } + fputc(ch, stdout); + } +} + + +/* * This function prints a pathname, using the ext2fs_get_pathname * function */ @@ -148,7 +174,7 @@ static void print_pathname(ext2_filsys fs, ino_t dir, ino_t ino) if (retval) fputs("???", stdout); else { - fputs(path, stdout); + safe_print(path, -1); ext2fs_free_mem((void **) &path); } } @@ -267,7 +293,7 @@ static _INLINE_ void expand_dirent_expression(char ch, len = EXT2_NAME_LEN; if (len > dirent->rec_len) len = dirent->rec_len; - printf("%.*s", len, dirent->name); + safe_print(dirent->name, len); break; case 'r': printf("%u", dirent->rec_len); diff --git a/include/linux/ChangeLog b/include/linux/ChangeLog index f56814f..aa5d6e5 100644 --- a/include/linux/ChangeLog +++ b/include/linux/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/install-utils/ChangeLog b/install-utils/ChangeLog index c2e4d6e..aa5c2f5 100644 --- a/install-utils/ChangeLog +++ b/install-utils/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/lib/ChangeLog b/lib/ChangeLog index 918a2bb..23e5d1e 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/lib/e2p/ChangeLog b/lib/e2p/ChangeLog index fcaf906..59e4806 100644 --- a/lib/e2p/ChangeLog +++ b/lib/e2p/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + Mon Jan 4 02:34:53 1999 Theodore Y. Ts'o * uuid.c: Use asm/types.h instead of linux/types.h, to be diff --git a/lib/et/ChangeLog b/lib/et/ChangeLog index 5c53b29..44fb165 100644 --- a/lib/et/ChangeLog +++ b/lib/et/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/lib/ext2fs/ChangeLog b/lib/ext2fs/ChangeLog index 7236782..a0bba4f 100644 --- a/lib/ext2fs/ChangeLog +++ b/lib/ext2fs/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1999-01-07 Theodore Ts'o * inode.c (ext2fs_read_inode, ext2fs_write_inode): Check to see if diff --git a/lib/ss/ChangeLog b/lib/ss/ChangeLog index 225a84c..0d7eae9 100644 --- a/lib/ss/ChangeLog +++ b/lib/ss/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + Mon Jan 4 00:05:14 1999 Theodore Y. Ts'o * mk_cmds.sh.in (TMP): Fixed portability bug in shell script; we diff --git a/lib/uuid/ChangeLog b/lib/uuid/ChangeLog index e514e5f..04fd89d 100644 --- a/lib/uuid/ChangeLog +++ b/lib/uuid/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/misc/ChangeLog b/misc/ChangeLog index f38cf7b..58e3eb6 100644 --- a/misc/ChangeLog +++ b/misc/ChangeLog @@ -1,5 +1,9 @@ 1999-01-09 Theodore Ts'o + * Release of E2fsprogs 1.14 + +1999-01-09 Theodore Ts'o + * fsck.8.in: Clarified and expanded the documentation for the -A switch. diff --git a/resize/ChangeLog b/resize/ChangeLog index d091ff6..2097988 100644 --- a/resize/ChangeLog +++ b/resize/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/tests/ChangeLog b/tests/ChangeLog index 0fdfe67..b5cde4e 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/tests/progs/ChangeLog b/tests/progs/ChangeLog index a93ff2f..7313aef 100644 --- a/tests/progs/ChangeLog +++ b/tests/progs/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 diff --git a/util/ChangeLog b/util/ChangeLog index 180cd86..7e5f120 100644 --- a/util/ChangeLog +++ b/util/ChangeLog @@ -1,3 +1,7 @@ +1999-01-09 Theodore Ts'o + + * Release of E2fsprogs 1.14 + 1998-12-15 Theodore Ts'o * Release of E2fsprogs 1.13 -- 1.8.3.1