newlib/winsup/utils/ChangeLog

2598 lines
88 KiB
Plaintext

2008-09-12 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (pathlike::check_existence): Remove class name from
declaration.
(display_internet_error): Use proper format specifier for DWORD.
(environ): Remove unneeded declaration.
(main): Use brace around nested if to avoid an overly-helpful compiler
warning.
* dump_setup.cc (parse_filename): Reorganize nested if to avoid an
overly-helpful compiler warning.
* path.cc (GUID_shortcut): Use braces around part of initializer which
needs them.
(conv_fstab_spaces): Parenthesize assignment in while loop to avoid a
compiler warning.
(struct opt): Make static.
* ps.cc (main): Reorganize nested if to avoid an overly-helpful
compiler warning.
* regtool.cc: Make some anonymous structs static to avoid a compiler
warning.
* ssp.c (lookup_thread_id): Initialize *tix to zero to avoid potential
uninitialized use.
* strace.cc (add_child): Use proper format specifier for DWORD.
(remove_child): Ditto.
(proc_child): Ditto.
2008-08-27 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (nuke): Use malloc rather than alloca for environment
variables.
(load_cygwin): Ditto.
* dump_setup.cc (parse_filename): Cosmetic changes.
(get_packages): Ditto.
2008-08-25 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (enum_local_groups): Don't skip printing groups when
print_current is set and group SID is not curr_pgrp.
(enum_groups): Ditto.
(main): Fix condition when SYSTEM group gets printed.
* mkpasswd.c (enum_users): Don't skip printing users when print_current
is set and user SID is not curr_user.
(main): Allow printing standard accounts even when print_current is set.
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (enum_local_groups): Use NetLocalGroupGetInfo to find out
if a group exists, rather than just allocating a buffer and going ahead.
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (enum_local_groups): Call print_win_error with GetLastError
as argument when LookupAccountXXX failed.
(enum_groups): Ditto.
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (enum_local_groups): Return failure if looking for a single
group succeeded. Add comment.
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Keep correctly track of optional arguments.
* mkpasswd.c (main): Ditto.
2008-08-18 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Always unset environment variable POSIXLY_CORRECT.
Keep track of optional argumnts and fix up optind afterwards.
* mkpasswd.c (main): Ditto.
2008-08-17 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (print_version): Update copyright dates.
2008-08-17 Christopher Faylor <me+cygwin@cgf.cx>
* mkpasswd.c (main): Avoid printing system accounts when a single user
name has been requested.
2008-08-17 Christopher Faylor <me+cygwin@cgf.cx>
* Makefile.in (ALL_LDFLAGS): Add --enable-auto-import option to quiet
ld warnings.
* mkgroup.c: Change all global variables and most functions to static.
(enum_local_groups): Add a print_current parameter to control whether
entries for everything should be printed or just the current user.
(enum_groups): Ditto.
(main): Move call fetch_current_pgrp_sid earlier to avoid a NULL
deference when no command line arguments are specified. Accommodate
argument changes to above functions. Avoid printing SYSTEM account
when print_current is specified. Issue error when extra stuff is found
on the command line.
* mkpasswd.c: Change all global variables and most functions to static.
(enum_users): Add a print_current parameter to control whether entries
for everything should be printed or just the current user.
(main): Move call fetch_current_user_sid earlier to avoid a NULL
deference when no command line arguments are specified. Accommodate
argument change to above function. Avoid printing standard accounts
when print_current is specified. Issue error when extra stuff is found
on the command line.
2008-08-15 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (fetch_current_pgrp_sid): New function to fetch primary
group SID from user token.
(current_group): Move up in file. Move fetching primary group SID to
fetch_current_pgrp_sid.
(enum_local_groups): Check if current SID is the same as current user's
primary group SID.
(enum_groups): Ditto.
(main): Call fetch_current_pgrp_sid before enumerating groups. Call
current_group only if current group hasn't been enumerated already.
* mkpasswd.c (fetch_current_user_sid): New function to fetch current
user SID from user token.
(current_user): Move fetching current user SID to
fetch_current_user_sid.
(enum_users): Check if current SID is the same as current user's SID.
(main): Call fetch_current_user_sid before enumerating users. Call
current_user only if current user hasn't been enumerated already.
2008-08-13 Corinna Vinschen <corinna@vinschen.de>
* mount.cc (NT_MAX_PATH): Define.
(longopts): Rename mount-commands option to mount-entries.
(opts): Remove removed options.
(struct opt): Move up in file to allow using it in usage.
(usage): Change text for --mount-entries option. Remove
-X option. Add valid options output.
(main): Remove handling -b option.
(convert_spaces): New static function to convert spaces to "\040"
string.
(mount_entries): Renamed from mount_commands. Rewrite to emit
/etc/fstab compatible output.
(show_cygdrive_info): Print "nouser" rather than "system".
* umount.cc (longopts): Remove remove-all-mounts,
remove-cygdrive-prefix, remove-system-mounts, system and user options.
(opts): Remove A, c, s, S, u options.
(usage): Remove text for all removed options.
(main): Remove handling for all removed options.
(remove_all_mounts): Remove.
(remove_all_system_mounts): Remove.
(remove_cygdrive_prefix): Remove.
* utils.sgml: Fix mount and umount documentation. Move description
of (cyg,not)exec options to mount table section.
2008-08-04 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (load_cygwin): Duplicate argv list since it disappears
when cygwin1.dll is unloaded.
2008-07-30 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
* Makefile.in: Link cygcheck with -lntdll even without mingw-zlib.
2008-07-27 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (load_cygwin): Free the cygwin dll after we're done with
it.
2008-07-25 Christopher Faylor <me+cygwin@cgf.cx>
* mount.cc: Remove non-unix-like options (-x,-t,b) throughout.
(oopts): Use boolean constants for slightly increased clarity.
* configure.in: Remove apparently unneeded program_transfer_name code.
* configure: Regenerate.
2008-07-24 Corinna Vinschen <corinna@vinschen.de>
* utils.sgml: Remove useless text.
2008-07-23 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Fix test for duplicate domain/machine request.
* mkpasswd.c (main): Ditto.
2008-07-23 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Rework to allow per-domain/per-machine id_offset.
Add -b option to skip builtin groups.
(main): Simplify code.
* mkpasswd.c: Rework to allow per-domain/per-machine id_offset.
(main): Simplify code.
* utils.sgml: Explain changed mkgroup/mkpasswd -d/-D/-l/-L options.
Add mkgroup -b option.
2008-07-23 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Consolidate variable names.
(enum_unix_groups): New function.
(print_special): Use LookupAccountSidW instead of LookupAccountSidA.
(current_group): Ditto.
(usage): Add -U option.
(longopts): Add --unix option.
(opts): Add -U option.
(main): Handle -U option. Call enum_unix_groups if set.
* mkpasswd.c: Consolidate variable names.
(current_user): Use LookupAccountSidW instead of LookupAccountSidA.
(enum_unix_users): New function.
(usage): Add -U option.
(longopts): Add --unix option.
(opts): Add -U option.
(main): Handle -U option. Call enum_unix_groups if set.
* utils.sgml: Add -U option text to mkgroup and mkpasswd description.
2008-07-22 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (enum_groups): Create full qualified groupname using
domain or servername, depending on printing domain or machine accounts.
* mkpasswd.c (enum_users): Ditto for users.
2008-07-22 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Remove special root group code. Only print
SYSTEM group in case of printing local machine or local domain groups.
2008-07-22 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in (cygcheck.exe): Link against ntdll.
* bloda.cc: Use statically linked functions throughout.
* cygpath.cc: Drop 9x considerations.
* mkgroup.c: Revamp. Redefine -l and -d options to take optional
machine and domain parameters. Redefine -c to work always, using
token information. Add -L, -D, -C to create unique groupnames in
domain\group syntax. Add -S option to define domain\group separator
char. Ignore -u and -s options.
* mkpasswd.c: Revamp. Redefine -l and -d options to take optional
machine and domain parameters. Redefine -c to work always, using
token information. Add -L, -D, -C to create unique usernames in
domain\user syntax. Add -S option to define domain\user separator
char. Ignore -g and -s options. Prefer to take homedir from $HOME
over $HOMEDRIVE/$HOMEPATH.
* path.cc (oopts): Add "acl", "noacl", "posix=0" and "posix=1" options.
(getmntent): Accomodate throughout.
* ps.cc: Fix copyright dates.
* utils.sgml: Fix text for mkgroup and mkpasswd.
2008-07-17 Corinna Vinschen <corinna@vinschen.de>
* mount.cc (do_mount): Remove MOUNT_ENC code.
(oopts): Remove "managed" option.
(mount_commands): Drop "managed" handling.
* path.cc (oopts): Remove "managed" option.
(getmntent): Remove MOUNT_ENC code.
2008-07-17 Corinna Vinschen <corinna@vinschen.de>
* utils.sgml: Add id's to all examples.
2008-07-09 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Use statically linked functions throughout, except for
DsGetDcNameW. Reformat. Convert to use WCHAR for names throughout.
Use defines instead of constants throughout.
(MAX_SID_LEN): Define.
(load_netapi): Just load DsGetDcNameW pointer.
(psx_dir): Remove.
(uni2ansi): Remove.
(enum_local_users): Take server name and use in Net... call.
(DBGSID): Define datastructure.
(MAX_BUILTIN_SIDS): Define.
(builtin_sid_list): Define global sid list.
(builtin_sid_cnt): Define counter for global sid list.
(enum_local_groups): Take server name and use in Net... and Lookup...
calls. Take offset argument. Use MAX_PREFERRED_LENGTH in call to
NetLocalGroupEnum. Check for duplicate builtin groups.
(enum_users): Take server name and use in Net... call.
(usage): Change text slightly.
(print_version): Fix copyright.
(main): Call enum_local_groups for domains as well.
* mkpasswd.c: Use statically linked functions throughout, except for
DsGetDcNameW. Reformat. Convert to use WCHAR for names throughout.
Use defines instead of constants throughout.
(MAX_SID_LEN): Define.
(load_netapi): Just load DsGetDcNameW pointer.
(uni2ansi): Use wcstombs.
(current_user): Replace "unused_by_nt/2000/xp" by
just "unused".
(enum_users): Ditto.
(print_version): Fix copyright.
2008-05-22 Corinna Vinschen <corinna@vinschen.de>
* setfacl.c (setfacl): Change from void to int. Return 2 in case of
error.
(main): Return with error code from setfacl.
2008-05-15 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in (CYGWIN_BINS): Remove ipcrm and ipcs.
* ipcrm.c: Remove.
* ipcs.c: Remove.
2008-03-23 Corinna Vinschen <corinna@vinschen.de>
* mount.cc (usage): Mark -s and -u as ignored.
(print_version): Simplify printing copyright dates.
(main): Remove default_flag. Dont set flags on -s and -u options.
(mount_commands): Drop handling -s and -u options.
2008-03-22 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Fix multiple Cygwin DLL test.
* path.cc: Fetch mount points from fstab files instead of from
registry. Use adapted functions copied from Cygwin DLL.
(mnt_t): Drop issys member. Define as "mnt_t" instead of "struct mnt_t"
subsequently.
(max_mount_entry): New variable.
(unconvert_slashes): Move to earlier location in file. Make inline.
(find2): Remove.
(get_cygdrive0): Remove.
(get_cygdrive): Remove.
(skip_ws): New function.
(find_ws): Ditto.
(conv_fstab_spaces): Ditto.
(read_flags): Ditto.
(from_fstab_line): Ditto.
(get_user): Ditto.
(from_fstab): Ditto.
(mnt_sort): Ditto.
(read_mounts): Drop old registry code. Fetch
"Software\Cygwin\Setup\rootdir" value from HKCU or HKLM key. Use
rootdir extracted from module path as fallback. Call from_fstab for
nouser and user mount points.
(setmntent): Check max_mount_entry to test if read_mounts must be
called.
(getmntent): Use MOUNT_SYSTEM flag instead of mnt_t's issys member.
2008-03-16 Brian Dessent <brian@dessent.net>
* path.cc: Include malloc.h for alloca.
(is_symlink): Rewrite. Just read the whole file in memory rather
than by parts. Account for an ITEMIDLIST if present, as well as
the new style of Cygwin shortcut supporting targets > MAX_PATH.
2008-03-12 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc (do_sysfolders): Use cygwin_conv_path.
(do_pathconv): Use cygwin_conv_path and cygwin_conv_path_list.
* dumper.cc (main): Use cygwin_conv_path. Allocate target path
dynamically.
* mkpasswd.c (current_user): Use cygwin_conv_path.
(enum_users): Ditto.
* ps.cc (NT_MAX_PATH): Define.
(main): Use cygwin_conv_path.
* regtool.cc (find_key): Ditto. Allocate target path dynamically.
(cmd_save): Ditto.
2008-03-11 Brian Dessent <brian@dessent.net>
* cygcheck.cc (find_app_on_path): Make buffer SYMLINK_MAX + 1
chars.
2008-03-11 Brian Dessent <brian@dessent.net>
* cygcheck.cc (dirname): New static function.
(find_app_on_path): Use SYMLINK_MAX. Resolve symlink relative
to link's location. Adjust to the fact that cygpath already
normalizes its return value.
* path.cc (rel_vconcat): Add cwd parameter, and use it instead
of calling GetCurrentDirectory() if possible. Rename throughout.
(vcygpath): Rename from cygpath and accept cwd and va_list. Pass
cwd on to rel_vconcat().
(cygpath_rel): New front end for vcygpath.
(cygpath): Ditto.
* path.h (cygpath_rel): Declare.
(SYMLINK_MAX): Define to 4095.
2008-03-09 Brian Dessent <brian@dessent.net>
* Makefile.in (install): Don't install the testsuite.
2008-03-08 Brian Dessent <brian@dessent.net>
* Makefile.in: Add a 'check' target that builds and runs
testsuite.exe from path-testsuite.o and testsuite.o.
* path.cc: Include testsuite.h.
(struct mnt): Change to a mnt_t typedef and don't define
mount_table when TESTSUITE is defined.
(find2): Don't include when TESTSUITE is defined to avoid warning.
(get_cygdrive0): Ditto.
(get_cygdrive): Ditto.
(read_mounts): Provide empty implementation when TESTSUITE is
defined.
(vconcat): Use the isslash macro.
(unconvert_slashes): New helper to convert to backslashses.
(rel_vconcat): Handle relative paths more gracefully.
(cygpath): Skip a leading "./" sequence. Avoid double-slashes.
Normalize final output to backslashes and remove redundant path
sequences.
* testsuite.cc: New file implementing testsuite driver.
* testsuite.h: New header implementing harness mount table and
series of tests.
2008-03-08 Brian Dessent <brian@dessent.net>
* Makefile.in: Reorganize considerably, using GNU make's
static pattern rules and target-specific variables.
2008-02-28 Corinna Vinschen <corinna@vinschen.de>
* mkpasswd.c (main): Simplify generating SYSTEM entry. Add entries
for LocalService and NetworkService accounts. Change comments.
2008-01-13 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Always try to get a OSVERSIONINFOEX
first. Load kernel32.dll earlier. Make osname a buffer. Simplify
Non-NT code. Use GetProductInfo in Vista/2008 case. Clean up
non-Vista version info. Exit early if not on NT.
2007-12-29 Dave Korn <dave.korn@artimi.com>
* bloda.cc (enum bad_app): Add BYTEMOBILE.
(dodgy_app_detects[]): Add FILENAME entry to detect bmnet.dll.
(big_list_of_dodgy_apps[]): Add description for BYTEMOBILE.
2007-12-20 Brian Dessent <brian@dessent.net>
* Makefile.in (cygcheck.exe): Don't link to ntdll.
* bloda.cc (pNtQuerySystemInformation): Add.
(pRtlAnsiStringToUnicodeString): Add.
(get_process_list): Use function pointers for NT functions.
(dump_dodgy_apps): Skip dodgy app check on non-NT platforms.
Use GetProcAddress for NT-specific functions.
2007-12-07 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (opts): Add missing 'W'.
2007-12-06 Corinna Vinschen <corinna@vinschen.de>
* ps.cc: Include limits.h.
(main): Set file name buffer size to PATH_MAX. Use progname or
progname_long member of struct external_pinfo dependent of the value of
the struct's version member.
2007-08-31 Dave Korn <dave.korn@artimi.com>
* mkgroup.c (enum_groups): Use MAX_PREFERRED_LENGTH in netgroupenum
call so that it will automatically size returned buffer sufficiently.
2007-08-03 Dave Korn <dave.korn@artimi.com>
* Makefile.in (cygcheck.exe): Add bloda.o as prerequisite, adjusting
dependency-filtering $(wordlist ...) call appropriately. Link ntdll.
(bloda.o): New rule to build bloda.o
* cygcheck.cc (dump_sysinfo): Call bloda function dump_dodgy_apps().
* bloda.cc: New file implements detection of applications from the
Big List Of Dodgy Apps.
2007-07-24 Corinna Vinschen <corinna@vinschen.de>
* COPYING.dumper: New file.
* dumper.cc: Change license to plain GPLv2 + later.
* dumper.h: Ditto.
* parse_pe.cc: Ditto.
2007-07-23 Christopher Faylor <me+cygwin@cgf.cx>
* strace.cc (create_child): Don't convert a path from cygwin format
unless it has a slash.
2007-07-09 Christopher Faylor <me+cygwin@cgf.cx>
* strace.cc (usage): Add missing description for -q.
2007-07-09 Christopher Faylor <me+cygwin@cgf.cx>
* Makefile.in (kill.exe): Remove reliance on libiberty.
* kill.cc (strsigno): New function patterned after libiberty but using
newly exported cygwin array.
2007-06-03 Christopher Faylor <me+cygwin@cgf.cx>
* cygcheck.cc (pathlike): New class.
(paths): Redefine as type pathlike.
(display_error): Declare a few different ways to allow more flexible
usage throughout.
(display_error_fmt): New function for those cases where C++ just isn't
enough.
(add_path): Rewrite to allocate pathlike paths. Always tack on a
trailing slash since that's what everyone who uses it wants. NULL
terminate the path list. Register "it's a system path" field.
(init_path): Call add_path with info regarding whether path is a system
path or not.
(pathlike::check_existence): Move into pathlike class. Accept file and
extension arguments to build up path on the fly. Modify other
arguments.
(find_on_path): Constify return value and appropriate arguments.
Eliminate short-circuit for fully-qualified paths. Simplify loop which
iterates over path.
(already_did): Constify argument.
(track_down): Ditto. Regularize some error messages.
(find_app_on_path): Ditto.
(cygcheck): Constify argument. Use 20th century string handling
functions.
(dump_sysinfo): Remove odd inclusion of '\\bin' "Just in case".
Accommodate change of paths to pathlike.
* path.cc (isslash): Rename from SLASH_P and use throughout.
(rel_vconcat): Front-end to vconcat which prepends cwd to path before
passing along for conversion to native windows.
(cygpath): Remove "./" test. Call rel_vconcat if filename appears to
be relative.
2007-05-29 Pedro Alves <pedro_alves@portugalmail.pt>
* dumper.cc (dumper::prepare_core_dump): Record a phdr for each section.
2007-05-29 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc (do_options): Allow outputflag combined with other
basic flags. Only check options_from_file_flag if reading options
from command line.
(main): Check for NULL argz vector. Don't free argz vector prematurely.
Don't force flag combination in !options_from_file_flag case.
2007-05-23 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc: Include argz.h.
(options_from_file_flag): Move from main to global static variable.
(mode_flag): Ditto.
(do_sysfolders): Rename from dowin and accommodate throughout.
Don't exit from here.
(do_pathconv): Rename from doit and accommodate throughout.
(print_version): Change copyright.
(do_options): New function, centralizing option processing.
Rework checking options for correctness.
(action): New function, centralizing calling worker functions.
(main): Simplify. Move option processing to do_options. Move calling
worker functions to action. Rework getting arguments from files.
2007-03-30 Mark Mitchell <mark@codesourcery.com>
* utils/cygpath.cc (get_long_path_name_w32impl): Close handles returned
by FindFirstFile.
2007-03-30 Christopher Faylor <me@cgf.cx>
* mount.cc (main): Turn dos file warnings off since we know what we're
doing.
2007-02-22 Corinna Vinschen <corinna@vinschen.de>
* ipcs.c (_POSIX2_LINE_MAX): Drop definition.
2007-02-20 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Add "not supported" to osname on 9x
machines. Drop "not supported" for Vista. Drop "Longhorn" text
for now.
2007-01-09 Christian Franke <franke@computer.org>
* cygpath.cc (usage): Add -O and -F, remove tabs.
(get_special_folder): New function.
(get_user_folder): New function.
(dowin): Add -O and -F, better -D, -P error handling.
(main): Add -O and -F.
* utils.sgml (cygpath): Document -O and -F.
2006-12-21 Corinna Vinschen <corinna@vinschen.de>
* dumper.cc: Include ansidecl.h before including bfd.h to woraround
a problem with the order in which system include files are included.
2006-12-11 Christopher Faylor <me@cgf.cx>
* dumper.cc: Add an include to accommodate new include/elf usage.
2006-12-10 Christopher Faylor <me+cygwin@cgf.cx>
* mount.cc (do_mount): Avoid unnecessary cygwin_conv_to_win32_path and
pass POSIX path directly - this avoids a cygwin DLL warning.
2006-10-21 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (key_type): Drop.
(REG_AUTO): Define.
(value_type): Replace key_type. Use REG_xxx values directly.
Accomodate change throughout.
(longopts): Add --dword, --dword-le, --none, --qword and --hex options.
(opts): Add -d, -D, -n, -Q and -x options.
(types): Array to convert REG_xxx into strings.
(hex): New variable to keep value of --hex option.
(usage): Accomodate new options. Print only the necessary by default.
Only be verbose in case of -h/--help option.
(cmd_list): Use key separator from -K option when printing.
Print value type when verbose option is given. Handle so far not
handled REG_xxx types.
(cmd_set): Avoid SEGV due to missing argument. Handle so far not
handled REG_xxx types.
(cmd_get): Handle --binary option type agnostic. Handle so far not
handled REG_xxx types.
(main): Handle new options.
2006-10-19 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (longopts): Add --wow32 option.
(opts): Add -W option.
(usage): Add text for --wow32/-W option.
(main): Handle --wow32/-W option.
* utils.sgml: Document the new -W option.
2006-10-16 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (KEY_WOW64_64KEY): Drop definition. Instead define
WINVER to 0x0502 before including windows.h.
2006-10-16 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (KEY_WOW64_64KEY): Define.
(longopts): Add --wow64 option.
(opts): Add -w option.
(wow64): New variable to control usage of KEY_WOW64_64KEY access flag.
(usage): Add text for --wow64/-w option.
(print_version): Fix copyright.
(find_key): Use wow64 value in calls to RegOpenKeyEx and RegCreateKeyEx.
(cmd_add): Use wow64 value in call to RegCreateKeyEx.
(regDeleteKeyEx): New function pointer to load RegDeleteKeyEx function
dynamically.
(cmd_remove): Load and use regDeleteKeyEx when wow64 is set.
(main): Handle --wow64/-w option.
* utils.sgml: Document the new -w option.
2006-10-05 Igor Peshansky <pechtcha@cs.nyu.edu>
* cygcheck.cc (get_word, get_dword): Move to path.cc.
(LINK_EXTENSION): New macro.
(check_existence): New static function.
(find_on_path): Check for symbolic links if asked.
(dll_info): New error handling.
(track_down): Only call dll_info() for executables, display
an error for symlinks, and print magic number for others.
(find_app_on_path): New static function.
(cygcheck, dump_sysinfo): Call find_app_on_path() instead of
find_on_path().
* path.cc (cmp_shortcut_header): New static function.
(get_word, get_dword): Moved from cygcheck.cc.
(EXE_MAGIC, SHORTCUT_MAGIC, SYMLINK_COOKIE, SYMLINK_MAGIC): New
macros.
(is_exe, is_symlink, readlink): New functions.
* path.h (is_exe, is_symlink, readlink): Declare.
(get_word, get_dword): Ditto.
2006-09-12 Christopher Faylor <cgf@timesys.com>
* Makefile.in: Fix -ntdll typo.
2006-09-11 Eric Blake <ebb9@byu.net>
* cygcheck.cc (main): Restore POSIXLY_CORRECT before displaying user's
environment.
2006-08-03 Corinna Vinschen <corinna@vinschen.de>
* path.cc (vconcat): Don't convert backslahes to slashes.
(cygpath): Return native path with all backslashes.
2006-08-02 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in (cygpath.exe): Add rule to link cygpath against ntdll.dll.
* cygpath.cc: Include DDK headers.
(RtlAllocateUnicodeString): New static inline function.
(get_device_name): New static function to evaluate DOS path from
native NT path.
(get_device_paths): New function to do the same for path lists.
(doit): Call get_device_paths/get_device_name where appropriate.
2006-07-30 Ilya Bobir <ilya@po4ta.com>
* cygpath.cc (get_long_name): Fallback to get_long_path_name_w32impl.
2006-07-27 Corinna Vinschen <corinna@vinschen.de>
* cygpath.c (get_long_name): Cover the case that GetLongPathName
doesn't return valid information for non-existant files. Just return
incoming filename in that case.
2006-07-03 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
* Makefile.in: Build setmetamode.exe.
* setmetamode.c: New file.
2006-05-24 Christopher Faylor <cgf@timesys.com>
* configure.in: Update to newer autoconf.
(thanks to Steve Ellcey)
* configure: Regenerate.
* aclocal.m4: New file.
2006-05-24 Christopher Faylor <cgf@timesys.com>
* strace.cc (proc_child): Propagate return code from child process.
(dostrace): Ditto.
(main): Ditto.
2006-03-03 Christian Franke <franke@computer.org>
* regtool.cc (options): Add 'binary'.
(usage): Document 'load|unload|save' and '-b'.
(find_key): Add 'options' parameter, add load/unload.
(cmd_set): Add KT_BINARY case.
(cmd_get): Add hex output in KT_BINARY case.
(cmd_load): New function.
(cmd_unload): New function.
(set_privilege): New function.
(cmd_save): New function.
(commands): Add load, unload and save.
(main): Add '-b'
* utils.sgml (regtool): Document it.
2006-02-17 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc (get_long_name): Load GetLongPathNameA instead of incorrect
GetLongPathName.
(doit): Create mixed filename after converting to short or long pathname
respectively.
2006-02-17 Jerry D. Hedden <jerry@hedden.us>
* ps.cc (main): Set aflag if -p option is given.
2006-02-16 Jerry D. Hedden <jerry@hedden.us>
* ps.cc (longopts): Add --process option.
(opts): Add -p option.
(usage): Mention -p/--process option.
(main): Handle -p option.
* utils.sgml: Describe -p/--process option.
2006-02-15 Igor Peshansky <pechtcha@cs.nyu.edu>
* regtool.cc (usage): Clarify help for "-K".
2006-02-08 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (find_on_path): Update copyright text.
2006-02-08 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (find_on_path): Create copy of rv on successful access
check, since rv can be reused in subsequent calls.
2006-01-19 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (common_paths): Add "patch".
2006-01-19 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (init_paths): Record first_nonsys_path.
(find_on_path): Start on first nonsys path when !search_sysdirs.
2006-01-18 Christopher Faylor <cgf@timesys.com>
* Makefile.in (sysconfdir): Remove unneeded variable.
* mkgroup.c: Replace ` with ' throughout.
* mkpasswd.c: Ditto.
* setfacl.c: Ditto.
* ssp.c: Ditto.
2006-01-18 Dave Korn <dave.korn@artimi.com>
* cygpath.cc (dowin): Remove stray debugging printf statement.
2006-01-17 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in: Replace etcdir with sysconfdir.
2006-01-13 Brian Dessent <brian@dessent.net>
* Makefile.in (cygcheck.exe): Do not link against libwininet.a.
* cygcheck.cc (pInternetCloseHandle): Define global function pointer.
(display_internet_error): Use it.
(package_grep): Attempt to load wininet.dll at runtime. Call WinInet
API through function pointers throughout.
2006-01-13 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Convert k32 to HMODULE.
2006-01-13 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Convert osname to const and remove casts
in subsequent assignments. Recognize Longhorn/Vista and report as not
yet supported. Recognize when running under WOW64 and report native
CPU type. Slightly rearrange \n printing.
2006-01-12 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc: Replace ` with ' throughout.
2006-01-05 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (dump_sysinfo): Report the failing drive to prevent
having to guess.
2005-12-29 Christopher Faylor <cgf@timesys.com>
* strace.cc (nprocesses): Make static global.
(quiet): New variable.
(strace_active): Ditto.
(add_child): Increment nprocesses here. Don't add a child if it is
already added (windows bug?). Report on child if not quiet.
(get_child): Just return NULL if child not found.
(remove_child): Report on child if not quiet.
(attach_process): Don't complain if given a windows process. Use
windows pid in error.
(handle_output_debug_string): Issue error if trying to manipulate a process that we don't know about.
Handle _STRACE_CHILD_PID - attach to reported child when we get this.
(proc_child): Move nprocesses to file scope.
Report on exceptions.
(longopts): Implement "--quiet".
(opts): Implement "-q".
(main): Manipulate quiet flag.
* utils.sgml (strace): Add words describing '-q'.
2005-12-29 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (common_apps): Add crontab, vi, vim.
2005-12-19 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* dump_setup.cc (package_find): Fix is_alias computation for "/usr/lib".
2005-12-14 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (common_apps): Add a few more binaries to look for.
2005-12-05 Christopher Faylor <cgf@timesys.com>
* strace.cc (show_usecs): Renamed from 'usecs'.
(main): Use show_usecs rather than usecs. Toggle delta if '-u' is
specified.
(handle_output_debug_string): Avoid printing microsecond timestamp if
show_usecs == 0.
* utils.sgml (strace): Add words to describe '-u'.
2005-11-22 Brian Dessent <brian@dessent.net>
* Makefile.in: Link cygcheck with libwininet.a.
* cygcheck.cc: Add includes.
(grep_packages): New global variable.
(display_internet_error): New function.
(safe_chars): New global variable.
(base_url): Ditto.
(package_grep): New function.
(usage): Reword --help output for clarity. Document new argument.
(longopts): Add 'package-query' option.
(opts): Add 'p' option, reorder to be consistent with 'longopts'.
(main): Accommodate new option.
* utils.sgml (cygcheck): Update --help output. Document new -p option.
2005-09-22 Corinna Vinschen <corinna@vinschen.de>
Align error message handling to mkpasswd's error messages throughout.
* mkgroup.c (print_win_error): Create macro calling ...
(_print_win_error): ... this function created from former
print_win_error. Move up in source.
(PDOMAIN_CONTROLLER_INFOW): Define return type of DsGetDcNameW.
(dsgetdcname): New function pointer for DsGetDcNameW.
(load_netapi): Get DsGetDcNameW address.
(main): If DsGetDcNameW is available, use it.
* mkpasswd.c (PDOMAIN_CONTROLLER_INFOW): Define return type of
DsGetDcNameW.
(dsgetdcname): New function pointer for DsGetDcNameW.
(load_netapi): Get DsGetDcNameW address.
(main): If DsGetDcNameW is available, use it. Rename local variable
domain_name_specified to domain_specified as in mkgroup.c.
2005-09-08 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* regtool.cc: Extend copyright-years.
(print_version): Ditto.
(cmd_list): Don't depend on terminating '\0' being present on
string-values.
(cmd_get): Don't attempt to read more than present, but keep
extra space for terminating '\0'. Really output REG_BINARY.
Don't leak memory.
(cmd_set): Include trailing '\0' in string's length.
2005-08-18 Corinna Vinschen <corinna@vinschen.de>
* passwd.c (longopts): Add --logonserver option.
(opts): Add -d option.
(GetPW): Add server parameter which is given to Net functions.
(ChangePW): Ditto.
(PrintPW): Ditto.
(SetModals): Ditto.
(usage): Add description for -d/--logonserver option.
(main): Add option handling for -d/--logonserver. Use LOGONSERVER
environment variable content for server to contact, unless
-d/--logonserver option is given. If both is missing, use NULL.
2005-08-16 Brian Dessent <brian@dessent.net>
* cygcheck.cc (dump_sysinfo_services): Properly null-terminate 'buf'.
Avoid extraneous cygrunsrv invocation if 'verbose' is true.
2005-08-03 Corinna Vinschen <corinna@vinschen.de>
* mount.cc (longopts): Fix typo which disallows --options option.
2005-07-19 Christopher Faylor <cgf@timesys.com>
Eric Blake <ebb9@byu.net>
* cygcheck.cc (find_on_path): Perform .exe magic on non-PATH search.
2005-07-05 Eric Blake <ebb9@byu.net>
* cygcheck.cc (track_down, cygcheck): Return true on success.
(main): Reflect cygcheck failures in exit status.
2005-06-14 Corinna Vinschen <corinna@vinschen.de>
* parse_pe.c (exclusion::sort_and_check): Remove crude cast.
2005-05-30 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Recognize XP Media Center and Tablet PC
Editions. Change .NET to 2003 throughout. Recognize 2003 Web Server
and Datacenter Server. Report when running in terminal server session.
2005-05-27 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (load_cygwin): Make half-hearted attempt to work with
older DLLs.
* strace.cc (load_cygwin): Ditto.
2005-05-22 Brian Dessent <brian@dessent.net>
* cygcheck.cc (dump_sysinfo_services): Add new function that uses
new cygrunsrv options to dump service info.
(dump_sysinfo): Call dump_sysinfo_services if running under NT.
Change 'Cygnus' to 'Cygwin' in output.
2005-05-20 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (load_cygwin): Remove debugging statement.
2005-05-20 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (dump_sysinfo): Don't attempt to use path if it is not
set.
(nuke): Fix off by one error in allocation of environment variable.
(load_cygwin): Always set PATH even if cygwin environment is empty.
2005-05-16 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (cygwin_internal): Define as a "C" function.
* strace.cc (cygwin_internal): Ditto.
* cygpath.cc (print_version): Update copyright.
2005-05-15 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (load_cygwin): Avoid calling putenv with a NULL path.
2005-05-15 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (load_cygwin): Don't touch $PATH for now.
(print_version): Fix copyright.
* strace.cc (print_version): Ditto.
2005-05-13 Christopher Faylor <cgf@timesys.com>
* mount.cc (mount_commands): Display "-X" option when appropriate.
2005-05-08 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (nuke): New function.
(load_cygwin): New function.
(main): Use load_cygwin to load argv/envp from cygwin environment, if
appropriate.
2005-05-08 Christopher Faylor <cgf@timesys.com>
* strace.cc (attach_process): Don't call load_cygwin(). Assume that
it's already happened.
(dotoggle): Ditto.
(main): Set argv from cygwin environment, if it exists.
2005-05-01 Christopher Faylor <cgf@timesys.com>
* mount.cc (usage): Clarify action of -m option.
2005-04-29 Dave Korn <dave.korn@artimi.com>
* path.cc (getmntent): Add previously-omitted 'noexec' and 'managed'
flags to mnt_opts string if present in mount flags.
2005-04-20 Brian Dessent <brian@dessent.net>
* utils.sgml (mount): Clarify setting cygdrive prefix for user
and system-wide.
2005-03-24 Brian Dessent <brian@dessent.net>
* cygcheck.cc (init_paths): Use full path instead of "." for the
current directory. Do not add "." if present in $PATH.
(dump_sysinfo): Skip placeholder first value of paths[].
2005-03-07 Christopher Faylor <cgf@timesys.com>
* kill.cc (getsig): Rectify bug introduced by 2005-02-26 change. Don't
pad signal name with spaces.
2005-03-07 Corinna Vinschen <corinna@vinschen.de>
* strace.cc (handle_output_debug_string): Fix compiler warning.
2005-03-06 Christopher Faylor <cgf@timesys.com>
* cygpath.cc (usage): Pass in one more copy of program_name to printf
to avoid a SEGV.
2005-02-27 Christopher Faylor <cgf@timesys.com>
* regtool.cc (opts): The argument to 'K' is not optional.
(main): Revert previous change. Just let getopt deal with missing
argument.
2005-02-27 Christopher Faylor <cgf@timesys.com>
* regtool.cc (main): Avoid a SEGV when nothing follows -K.
2005-02-26 Christopher Faylor <cgf@timesys.com>
* kill.cc (getsig): Avoid buffer overflow when generating a signal name.
* strace.cc (handle_output_debug_string): Make error a little more specific.
2005-02-23 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygpath.cc (usage): Clarify help output to indicate acceptance
of multiple file names as arguments.
2005-01-16 Christopher Faylor <cgf@timesys.com>
* ps.cc (main): Eliminate use of PID_ZOMBIE.
* strace.cc (main): Recognize new option for displaying hex value of
strace type.
(handle_output_debug_string): Prepend output with hex value of strace
message if -H is specified.
2005-01-11 Pierre Humblet <pierre.humblet@ieee.org>
* mkpasswd.c (print_win_error): Transform into macro.
(_print_win_error): Upgrade former print_win_error by
printing the line.
(current_user): Call _print_win_error.
(enum_users): Print name in case of lookup failure.
(enum_local_groups): Ditto.
2004-11-18 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (eprintf): New function.
2004-11-16 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (find_on_path): Clear show_error and/or print_failed
parameters to display_error.
(rva_to_offset): Ditto.
(dll_info): Ditto.
(track_down): Ditto.
2004-11-13 Pierre Humblet <pierre.humblet@ieee.org>
* kill.cc (forcekill): Do not pass negative pids to
cygwin_internal. Check if sig == 0. Improve error messages.
(main): Make pid a long long and distinguish between pids, gpids
(i.e. negative pids) and Win9x pids.
2004-11-11 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc: Change "keyeprint" to "display_error" throughout.
2004-11-11 Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (main): Allow a '-l' without an additional argument.
2004-11-11 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (keyeprint): New optional parameters: show_error and
print_failed.
2004-10-31 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (get_dword): Fix errormessage.
(cygwin_info): Ditto.
(track_down): Ditto.
(check_keys): Ditto.
2004-10-27 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Warn about missing or multiple cygwin1
dlls.
2004-10-25 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Add leading newline before legend for
drive-list.
2004-10-22 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): In legend for drive-list: Add ``ram'' and
``unk''. Use single puts. Add leading newline. Line up equal-signs.
2004-10-20 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Allow for larger drives in drive-list.
Change ``Used'' to ``Free'' in helptext-title for drive-list.
2004-10-18 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (pretty_id): Don't let i become negative. Fix
printf-format.
2004-10-17 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (pretty_id): Allocate space for ')' in uid and guid.
2004-10-17 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (pretty_id): Allocate space for trailing '\0' in uid and
guid.
2004-10-15 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
Christopher Faylor <cgf@timesys.com>
* cygcheck.cc (pretty_id): Don't exit on id error. Fix size
calculations.
2004-10-14 Christopher Faylor <cgf@timesys.com>
Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (pretty_id): Correct column calculations. Abort if id is
acting funny.
2004-10-10 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (add_path): Don't leak memory when path is already in
``paths''.
2004-10-10 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Warn about trailing (back)slash on mount
entries.
2004-10-10 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Don't warn about empty path components,
just display ``.''.
2004-10-06 Corinna Vinschen <corinna@vinschen.de>
* strace.cc (_impure_ptr): Remove.
2004-10-06 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (dump_sysinfo): Warn about empty path components.
2004-10-04 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* cygcheck.cc (pretty_id): Close pipe.
2004-09-23 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* dump_setup.cc (dump_setup): Remove unneeded strlen when check_files
is not set.
2004-09-22 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
Corinna Vinschen <corinna@vinschen.de>
* dump_setup.cc (dump_setup): Avoid trailing spaces on package-list.
2004-09-15 Bas van Gompel <cygwin-patch.buzz@bavag.tmfweb.nl>
* getfacl.c (main): Correct layout when nopt is set.
2004-07-12 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* mkgroup.cc (netapibufferallocate,netgroupgetinfo): New function
pointers.
(load_netapi): Load NetApiBufferAllocate and NetGroupGetInfo.
(enum_local_groups,enum_groups): Add disp_groupname parameter.
Load info for disp_groupname if specified.
(usage): Add description of "-g/--group" option.
(longopts,opts): Add "-g/--group" option.
(main): Process "-g/--group" option.
* utils.sgml (mkgroup): Add description of "-g/--group" option
2004-06-15 Alan Modra <amodra@bigpond.net.au>
* dumper.cc (dumper::prepare_core_dump): Use bfd_get_section_size
instead of _raw_size.
(dumper::write_core_dump): Likewise.
* parse_pe.cc (select_data_section): Likewise.
2004-05-29 John Paul Wallington <jpw@gnu.org>
* ssp.c (usage): Add missing linefeed.
2004-05-27 Christopher Faylor <cgf@alum.bu.edu>
* kill.cc (listsig): Fix "kill -l" segv. NSIG includes Signal 0, so we
need to avoid calling strtosigno with NSIG - 1.
2004-03-21 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (dump_sysinfo): Remove "Win95/NT" from output.
2004-03-15 Christopher Faylor <cgf@redhat.com>
* cygpath.cc (usage): Don't issue helpful message if -i is used.
(from Igor Pechtchanski)
2004-03-13 Rob Siklos <rob2@siklos.ca>
* kill.cc (get_debug_priv): New function.
(forcekill): Call get_debug_priv before trying to kill process.
2004-02-24 Christopher Faylor <cgf@redhat.com>
* cygpath.cc (long_options): Add "mode" option.
(options): Ditto.
(usage): Report on new option.
(report_mode): New function.
(main): Implement -M option.
2004-02-20 Christopher Faylor <cgf@redhat.com>
* Makefile.in (build_dumper): Detect missing iconv library.
* cygpath.cc (dowin): Report on filename conversion errors.
(doit): Ditto.
* strace.cc (main): Use symbolic constant for _STRACE_ALL when setting
mask.
2004-02-14 Corinna Vinschen <corinna@vinschen.de>
* ssp.c (opts): Add leading '+' to force posixly correct behaviour.
2004-02-11 Corinna Vinschen <corinna@vinschen.de>
* strace.cc (opts): Add leading '+' to force posixly correct
behaviour.
(main): Revert POSIXLY_CORRECT manipulations.
2004-02-10 Christopher Faylor <cgf@redhat.com>
* strace.cc (main): Guard against previous setting of POSIXLY_CORRECT.
2004-02-10 Christopher Faylor <cgf@redhat.com>
* strace.cc: Update copyrights.
* cygcheck.cc: Update copyrights.
2004-02-10 Christopher Faylor <cgf@redhat.com>
* strace.cc (main): Ensure POSIXLY_CORRECT argument ordering.
* cygcheck.cc (main): Ditto.
2004-01-23 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (pretty_id): Make more robust in absence of id.exe.
2004-01-22 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc (dowin): Revert accidental checkin from November.
2003-11-26 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Print "root" group with local admins group sid
and gid 0.
2003-11-19 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in: Add rules to build ipcrm and ipcs.
* ipcrm.c: New file.
* ipcs.c: New file.
2003-11-14 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Avoid compiler warnings throughout.
* mkpasswd.c: Ditto.
* passwd.c: Ditto.
2003-11-07 Mark Blackburn <marklist@fangorn.ca>
* cygpath.cc (main): Allow multiple pathnames on command line.
2003-11-04 Corinna Vinschen <corinna@vinschen.de>
* passwd.c (PrintPW): Turn around meaning printed for "Password not
required" option to be in line with Windows meaning.
(main): Use more appropriate 1008 option when calling
NetUserSetInfo to change flag values.
2003-11-04 Corinna Vinschen <corinna@vinschen.de>
* passwd.c (UF_LOCKOUT): Remove (defined in lmaccess.h).
(version): Bump version number to 1.5.
(longopts): Add -c, -C, -e, -E, -p, -P options.
(opts): Ditto.
(PrintPW): Print values of UF_PASSWD_CANT_CHANGE and
UF_DONT_EXPIRE_PASSWD flags. Slightly reformat output. Don't suppress
correct system password settings just because the account has admin
privileges.
(usage): Define as "noreturn" function. Restructure and rephrase
output. Accommodate new options.
(print_version): Fix copyright dates.
(main): Accommodate new options for setting UF_PASSWD_CANT_CHANGE,
UF_DONT_EXPIRE_PASSWD and UF_PASSWD_NOTREQD settings.
2003-10-17 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (pretty_id): Don't exec if `id' program is not found.
2003-09-20 Christopher Faylor <cgf@redhat.com>
* kill.cc (main): Allow negative pids (indicates process groups).
2003-09-17 Christopher Faylor <cgf@redhat.com>
* parse_pe.cc (exclusion::sort_and_check): Make error message a little
more explicit and ignore (hopefully) harmless region overlap.
2003-09-13 Christopher Faylor <cgf@redhat.com>
* kill.c (forcekill): Wait for process to terminate even if
TerminateProcess says it failed.
2003-09-11 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Tweak mingw libz.a detection to make it more reliably
detect when libz.a is not available.
2003-09-11 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* cygcheck.cc (dump_only): New global variable.
(usage): Add "--dump-only" option, fix "--verbose" line.
(longopts, opts): Add "--dump-only" option.
(main): Process the "--dump-only" flag. Add new semantic check.
Pass dump_only information to dump_setup().
2003-09-11 Corinna Vinschen <corinna@vinschen.de>
* getfacl (main): Remove extern declaration of optind.
* setfacl (main): Remove extern declaration of optarg and optind.
2003-09-10 Christopher Faylor <cgf@redhat.com>
* Makefile.in (cygcheck.o): Use MINGW_CXX for compilation.
* cygcheck.cc: Just include <getopt.h> rather than cygwin version.
(pretty_id): Avoid compiler warnings.
* cygpath.cc (usage): Ditto.
2003-09-10 Christopher Faylor <cgf@redhat.com>
* Makefile.in (MINGW_CXX): Define and use for mingw-compiled files.
* path.cc: Include more path info in cygwin-specific includes since the
cygwin directory is no longer included by default.
2003-09-10 Christopher Faylor <cgf@redhat.com>
* Makefile.in: More fixups to adjust for the fact that mingw_getopt.o
is no longer built.
2003-09-10 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Remove references to getopt since it is now part of
mingwex.
2003-09-08 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Rename libz.h -> zlib.h.
2003-09-07 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Detect existence of mingw zlib headers and libraries.
Build cygcheck without package checking if they are unavailable.
* dump_setup.cc: Generate dummy zlib macros when zlib is not available.
(open_package_list): Use zlib functions to uncompress package lists.
Return gzFile rather than FILE *.
(check_package_files): Change fp to gzFile to accommodate zlib
functions. Use gzgets to read from package file. Use gzclose to close
the handle.
(package_list): Ditto.
(package_find): Ditto.
2003-09-05 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* dump_setup.cc (check_package_files): Don't fail on empty package.
2003-09-01 AJ Reins <reinsaj@yahoo.com>
* mount.cc (mount_commands): Ensure user mode is actually user mode and
not the default system mode.
2003-08-31 Christopher Faylor <cgf@redhat.com>
* kill.cc (forcekill): Silence some compiler warnings.
2003-08-31 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Oops. Put the '...' in the right place.
2003-08-31 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Display "..." when not-verbose.
* kill.cc (forcekill): Default to entered pid when pinfo fails. Issue
some warnings when things don't work.
2003-08-17 David Rothenberger <daveroth@acm.org>
* dump_setup.cc (check_package_files): Strip leading / and ./ from
package file names.
2003-08-16 David Rothenberger <daveroth@acm.org>
* dump_setup.cc (package_find): Don't stop searching on missing
file list.
(package_list): Ditto.
2003-08-16 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* dump_setup.cc: (package_list): Make output terse unless
verbose requested. Fix formatting.
(package_find): Ditto.
2003-08-15 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (main): Fix some formatting and help text printing.
2003-08-15 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* cygcheck.cc (find_package,list_package): New global
variables.
(usage): Add "--find-package" and "--list-package" options,
reformat output.
(longopts, opts): Add "--find-package" and "--list-package"
options.
(main): Process the "--find-package" and "--list-package"
flags. Add new semantic checks. Add calls to find_package()
and list_package().
* dump_setup.cc: Fix header comment.
(match_argv): Change return type to int to distinguish
between real matches and default ones.
(open_package_list): New static function.
(check_package_files): Factor out opening the package list
file into open_package_list().
(get_packages): New static function.
(dump_setup): Factor out getting a list of packages into
get_packages().
(package_list, package_find): New global functions.
2003-08-15 Corinna Vinschen <corinna@vinschen.de>
* regtool.cc (usage): Add missing linefeed. Move example to --help
text. Fix forward slash description.
2003-08-13 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* dump_setup.cc (check_package_files): Fix extra '/' in filename.
Resize command buffer. Fix buffer overflow bug.
2003-08-09 Igor Pechtchanski <pechtcha@cs.nyu.edu>
Christopher Faylor <cgf@redhat.com>
* dump_setup.cc (dump_setup): Check for the existence of the package
list file. Rework slightly to use static buffer for popen commands.
2003-08-07 Igor Pechtchanski <pechtcha@cs.nyu.edu>
Christopher Faylor <cgf@redhat.com>
* dump_setup.cc (version_len): New static variable.
(could_not_access,directory_exists): New static function.
(file_exists): Ditto.
(check_package_files): Ditto.
(dump_setup): Check the contents of each package if check_files is true
and output the result in the "Status" column. Flush output after each
package.
2003-08-07 Igor Pechtchanski <pechtcha@cs.nyu.edu>
Christopher Faylor <cgf@redhat.com>
* dump_setup.cc (dump_setup): Remove redundant null check. Add
informative message if package info not found.
2003-07-26 Christopher Faylor <cgf@redhat.com>
* mount.cc (do_mount): Issue warning when using managed mount option on
non-empty directory.
2003-07-25 Christopher Faylor <cgf@redhat.com>
* configure.in: Use 'install-sh -c'.
* configure: Regenerate.
2003-07-25 Christopher Faylor <cgf@redhat.com>
* configure.in: Always use install-sh.
* configure: Regenerate.
2003-07-03 Christopher Faylor <cgf@redhat.com>
* mount.cc (struct opt): Remove posix option.
2003-07-03 Christopher Faylor <cgf@redhat.com>
* mount.cc (longopts): Add long "options" keyword.
(opts): Add -o option.
(usage): Display -o option.
(struct opt): New.
(concat3): New function.
(main): Handle -o flag.
2003-06-12 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (pretty_id): Rework slightly to not rely on spaces.
2003-06-12 Christopher Faylor <cgf@redhat.com>
* cygpath.cc: Throughout, always return error when GetShortPathName
returns 0.
2003-04-26 Joshua Daniel Franklin <joshuadfranklin at yahoo dot com>
* mkpasswd.c (usage) Remove extra newline from description output.
2003-04-26 Joshua Daniel Franklin <joshuadfranklin at yahoo dot com>
* cygcheck.cc (usage) Add description output.
* cygpath.cc (usage) Add description output.
* dumper.cc (usage) Add newline to description output.
* kill.cc (usage) Add description output.
* mkgroup.c (usage) Grammatical change to description output.
* mkpasswd.c (usage) Grammatical change to description output.
* mount.cc (usage) Add description output.
* passwd.c (usage) Add description output.
* ps.cc (usage) Add description output.
* regtool.cc (usage) Add description output.
* setfacl.c (usage) Remove extra newline from description output.
* ssp.c (usage) Add description output.
* strace.cc (usage) Add description output.
* umount.cc (usage) Add description output.
2003-04-10 Pierre Humblet <pierre.humblet@ieee.org>
* mkpasswd.c (current_user): print uid and gid as unsigned.
(enum_users): Ditto. Do not free servername.
(usage): Update to allow several domains and improve -p.
(main): On Win9x limit uids to 1000. Only print specials
when -l is specified. Add a loop to allow several domains
and free servername in the loop.
* mkgroup.c (enum_groups): Do not free servername.
(usage): Update to allow several domains. Change uid to gid.
(main): Only print specials when -l is specified. Add a
loop to allow several domains and free servername in the loop.
2003-03-24 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (dump_sysinfo): Ensure that CYGWIN environment variable
is correctly set.
2003-03-09 Corinna Vinschen <corinna@vinschen.de>
* getfacl.c (username): Fix ambiguous printf calls.
(groupname): Ditto.
(main): Ditto.
2003-03-04 Christopher Faylor <cgf@redhat.com>
* Makefile.in (strace.exe): Include mingw_getopt.o in link line.
* cygcheck.cc (print_version): Update copyright.
* strace.cc (print_version): Ditto.
(main): Allow cygwin paths for -o option.
(create_child): Allow cygwin path as argv[0].
* path.cc (path.cc): Allow UNC paths.
2003-03-01 Pierre Humblet <pierre.humblet@ieee.org>
* mkpasswd.cc (main): On Win95, output both a default line and a
line for the current user (if known) with a pseudorandom uid. If
the -u switch is given, produce a line for the specified user.
* mkgroup.cc (main): On Win95 change the group name from "unknown" to
"all".
2003-02-28 Christopher Faylor <cgf@redhat.com>
* Makefile.in (cygcheck.o): Fix so that actual mingw include files are
used.
* cygcheck.cc (find_on_path): Translate from cygwin path when qualified
path name found.
(pretty_id): New function. Dump output of id command.
(dump_sysinfo): Call pretty_id for CYGWIN=ntsec and CYGWIN=nontsec cases.
2003-02-12 Christopher Faylor <cgf@redhat.com>
* cygpath.cc (doit): Allocate more space for non-path filename.
2003-02-07 Christopher Faylor <cgf@redhat.com>
* dump_setup.cc (compar): Use case insensitive comparisons.
(dump_setup): Calculate package_len based on already used "len". Don't
bother with version_len.
2003-02-07 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* dump_setup.cc (dump_setup): Compute the longest package name
and align columns properly.
2003-02-06 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (common_apps): Add some more apps.
* path.cc (get_cygdrive): Correctly set system flag.
2003-01-22 Corinna Vinschen <corinna@vinschen.de>
* Makefile.in (ALL_LDFLAGS): Remove newlib/libm from tools paths.
(MINGW_LDFLAGS): Remove in favor of definition from Makefile.common.
2003-01-15 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Fix copyright date.
* mkpasswd.c: Ditto.
* setfacl.c: Ditto.
2003-01-09 Pierre Humblet <pierre.humblet@ieee.org>
* setfacl.c (usage): Remove double ":" for mask and other.
2003-01-07 Pierre Humblet <pierre.humblet@ieee.org>
* mkpasswd.c (current_user): Create.
(usage): Reorganize to support Win95/98/ME.
(main): Add option for -c. Reorganize to parse options for
Win95/98/ME and to call current_user. Add username in gecos field
on Win95/98/ME.
* mkgroup.c (enum_groups): Print gid with %u.
(print_win_error): Create from passwd.cc.
(current_group): Create.
(usage): Reorganize to support Win95/98/ME.
(main): Add option for -c. Reorganize to parse options for
Win95/98/ME and to call current_group.
2002-12-14 Pierre Humblet <pierre.humblet@ieee.org>
* setfacl.c (main): Place a single : after other and mask.
* getfacl.c (getaclentry): Allow both : and :: for other and mask.
(main): Remove extraneous break.
2002-11-25 Corinna Vinschen <corinna@vinschen.de>
* mkpasswd.c (main): Set pw_passwd field to '*' on 9x/Me.
2002-11-24 Corinna Vinschen <corinna@vinschen.de>
* setfacl.c (getperm): Set only `other' permission bits.
(getaclentry): Set a_id to -1 by default.
2002-11-24 Corinna Vinschen <corinna@vinschen.de>
* getfacl.c (permstr): Use `other' permission bits for requesting
ace permissions.
2002-11-08 Corinna Vinschen <corinna@vinschen.de>
* setfacl.c (usage): Add missing LF.
2002-10-30 Christopher Faylor <cgf@redhat.com>
* cygpath.cc (get_long_path_name_w32impl): Define similarly to
GetLongPathName.
(get_long_name): Correctly prototype GetLongPathName.
(get_long_paths): Implement using get_long_name to cut down on code
duplication.
(doit): Do various things to make path output work predictably.
2002-10-19 Christopher Faylor <cgf@redhat.com>
* mount.cc (usage): Correctly report default mode.
* strace.cc (main): Use strtoul as appropriate.
2002-09-29 Christopher Faylor <cgf@redhat.com>
* cygpath.cc (close_arg): Remove unused static.
* mkgroup.c (enum_local_users): Avoid compiler warning.
(enum_users): Ditto.
* mkpasswd.c: Ditto throughout.
* ssp.c: Ditto throughout.
2002-09-18 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc: Include sys/time.h rather than time.h to avoid a
compiler error.
2002-09-17 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc: Reorder includes to avoid compiler error.
2002-09-15 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygcheck.cc (print_version) Add final newline.
* getfacl.c (print_version) Add final newline.
* kill.cc (print_version) Add final newline.
* mkgroup.c (print_version) Add final newline.
* mkpasswd.c (print_version) Add final newline.
* mount.cc (print_version) Add final newline.
* passwd.c (print_version) Add final newline.
* ps.cc (print_version) Add final newline.
* regtool.cc (print_version) Add final newline.
* setfacl.c (print_version) Add final newline.
* ssp.c (print_version) Add final newline.
* strace.cc (print_version) Add final newline.
* umount.cc (print_version) Add final newline.
2002-09-12 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* cygpath.cc (options) New global variable.
(main) Make short options global for easier change.
(print_version) Add a missing newline.
2002-08-07 Igor Pechtchanski <pechtcha@cs.nyu.edu>
* regtool.cc (find_key): Add support for custom key separator.
(usage): Document it.
2002-08-02 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Don't print an entry for "Everyone".
* mkpasswd.c (print_special): Set pw_gid to 544 for SYSTEM user.
(main): Don't print an entry for "Everyone".
2002-07-06 Christopher Faylor <cgf@redhat.com>
* configure.in: Check for libiconv.a.
* configure: Regenerate.
* Makefile.in: Add libiconv.a to libraries required for dumper.exe.
2002-07-06 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Use MINGW stuff from Makefile.common.
2002-07-01 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Add function pointers for functions from advapi32.dll.
(load_netapi): Load used functions from advapi32.dll.
(main): Use function pointers instead of statically linked functions
from advapi32.dll.
2002-07-01 Christopher Faylor <cgf@redhat.com>
* mount.cc (main): Ensure that mount_already_exists() also gets default
flag that is passed to do_mount.
2002-06-22 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygpath.cc (long_options): Add "dos" and "mixed", correct "close",
"file" and "type" to use NULL flag.
(usage): Clean up usage output (more), accomodate new options.
(main): Add --dos and --mixed options; accomodate all output forms in
--type. Make UNIXy output default.
2002-06-18 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygpath.cc (usage): Clean up usage output.
(dowin): Correct output of -t mixed for -ADHPSW options.
2002-06-14 Corinna Vinschen <corinna@vinschen.de>
* passwd.c: Rearrange includes to avoid unnecessary warnings.
(GetPW): Add parameter to (dis)allow printing of Windows username.
Use defines instead of numerical constants where possible.
Try avoiding impersonation problem. Rearrange to print Windows
username only if it's different from Cygwin username.
(ChangePW): Use defines instead of numerical constants where possible.
(main): Call GetPW with additional parameter. Change error text.
2002-06-14 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* passwd.c (GetPW): Handle case of user-edited /etc/passwd
with cygwin_internal (CW_EXTRACT_DOMAIN_AND_USER, ...).
2002-06-09 Christopher Faylor <cgf@redhat.com>
* path.cc (cygpath): Change MOUNT_AUTO to MOUNT_CYGDRIVE.
(getmntent): Ditto.
2002-06-09 Christopher Faylor <cgf@redhat.com>
* mount.cc (main): Use default system/user flag for cygdrive stuff,
too.
(change_cygdrive_prefix): Change MOUNT_AUTO to MOUNT_CYGDRIVE.
* umount.cc (remove_cygdrive_prefix): Ditto.
(main): Use default system/user flag for cygdrive stuff, too.
2002-06-08 Christopher Faylor <cgf@redhat.com>
* mount.cc (opts): Remove '-i' option.
(usage): Ditto.
(main): Ditto.
(longopts): Remove --import-old-mounts option.
2002-06-07 David Peterson <chief@mail.idrive.com>
Christopher Faylor <cgf@redhat.com>
* cygpath.cc: Add option to output windows paths in different formats:
"dos" and "mixed".
(main): Process options.
(doit): Check new options flags.
2002-06-06 Egor Duda <deo@logos-m.ru>
* regtool.cc (Fail): Be more verbose.
(find_key): Add support for remote registry access.
(usage): Document it.
* utils.sgml: Document it.
2002-06-06 Christopher Faylor <cgf@redhat.com>
* strace.cc (main): Make toggle a local variable.
2002-06-07 Conrad Scott <conrad.scott@dsl.pipex.com>
* strace.cc (toggle): New global variable.
(error): Use exit instead of ExitProcess so that stdio buffers get
flushed.
(create_child): Remove command line error checking.
(dostrace): Ditto.
(dotoggle): New function.
(usage): Add entry for new option -T|--toggle. Alphabetize.
(longopts): Add new option -T|--toggle.
(opts): Ditto.
(main): Handle new -T|--toggle option. Move all command line checking
here from other functions.
* utils.sgml: Update section for strace.
2002-06-05 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* strace.cc (version): New global variable.
(usage): Accommodate stdout output.
(print_version): New function.
2002-06-03 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* ssp.c (version): New global variable.
(longopts): Ditto.
(opts): Ditto.
(run_program): Correct cmd_line typos to cmdline.
(usage): New function. Standardize usage output. Add ssp.txt to
--help output.
(print_version): New function.
(main): Accommodate getopt.
2002-06-03 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* umount.cc (version): New global variable.
(longopts): Accommodate new --version option.
(opts): Ditto.
(usage): Standardize usage output.
(print_version): New function.
(main): Accommodate --help, --version options.
2002-06-02 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* regtool.cc (prog_name): New global variable.
(longopts): Ditto.
(opts): Ditto.
(usage): Standardize usage output. Rearrange/add descriptions.
(print_version): New function.
(main): Accommodate longopts and new --help, --version options. Add
check for (_argv[optind+1] == NULL).
2002-06-02 Christopher Faylor <cgf@redhat.com>
* strace.cc (forkdebug): Make true by default.
(attach_process): Use window pid if cygwin pid isn't available (yet).
(create_child): Use either DEBUG_ONLY_THIS_PROCESS or DEBUG_PROCESS,
exclusively. (Suggested by Conrad.Scott@dsl.pipex.com)
2002-05-30 Christopher Faylor <cgf@redhat.com>
* mkpasswd.cc (main): Don't reset to binmode if stdout is a terminal.
2002-05-29 Christopher Faylor <cgf@redhat.com>
* mount.cc (main): Make -b the default.
2002-05-29 Corinna Vinschen <corinna@vinschen.de>
* ps.cc (main): Use uid or uid32 member of struct external_pinfo
dependent of the value of the struct's version member.
2002-05-29 Corinna Vinschen <corinna@vinschen.de>
* ps.cc (main): Change print format for uid to unsigned. Use uid32
member of struct external_pinfo instead of uid.
2002-05-28 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* passwd.c (prog_name): New global variable.
(longopts): Ditto.
(opts): Ditto.
(usage): Standardize output. Accommodate new options.
(print_version): New function.
(main): Accommodate longopts and new --help, --version options.
2002-05-28 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* ps.cc (usage): Fix typo.
2002-05-27 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* ps.cc (prog_name): New global variable.
(longopts): Ditto.
(opts): Ditto.
(usage): New function.
(print_version): New function.
(main): Accommodate longopts and new --help, --version options.
2002-05-26 Christopher Faylor <cgf@redhat.com>
* strace.cc (attach_process): Don't tell process to start stracing
here.
(proc_child): Do it here, instead, after first debug event. This
should work around inexplicable races with DebugActiveProcess.
(dostrace): Pass any pid argument to proc_child.
2002-05-23 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* getfacl.c (usage): Standardize usage output. Change return type to
static void.
(print_version): New function.
(longopts): Added longopts for all options.
(main): Accommodate new help and version options.
2002-05-22 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* mount.cc (version): New global variable.
(usage): Standardize usage output. Accommodate new version option.
(print_version): New function.
(longopts): Accommodate new version option.
(opts): Ditto.
(main): Ditto.
2002-05-22 Corinna Vinschen <corinna@vinschen.de>
* cygpath.cc (usage): Change usage output slightly.
2002-05-20 Joerg Schaible <joerg.schaible@gmx.de>
* cygpath.cc (main): Add option l to support conversion to
Windows long file names. Refactured code for capital options.
Support of options from file for capital options.
(dowin): New function. Refactured from main.
(doit): Call long path conversion.
(get_long_name): New function.
(get_long_paths): New function.
(get_long_path_name_w32impl): New function. Reimplementation
of Windows API function GetLongPathName (only 98/Me/2000/XP or
higher).
(get_short_name): Call GetShortPathName only once.
(get_short_paths): Fix calculating buffer size.
* utils.sgml: Update cygpath section for l option.
2002-05-18 Christopher Faylor <cgf@redhat.com>
* strace.cc (add_child): Use calloc since new requires working
libstdc++.a.
(remove_child): Ditto for delete/free.
2002-05-15 Mark Blackburn <marklist@fangorn.ca>
* cygpath.cc (get_short_paths): Fix more error checking.
(get_short_name): Ditto.
2002-05-14 Joerg Schaible <joerg.schaible@gmx.de>
* cygpath.cc (main): Add option H to show the Windows' profiles
directory. Support short names for options DPSW. Clean up
copied code lines.
* utils.sgml: Update cygpath section for H option and s support.
2002-05-14 Mark Blackburn <marklist@fangorn.ca>
* cygpath.cc (get_short_paths): Fix error checking.
2002-05-13 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* kill.cc (prog_name): New global variable.
(usage): Standardize usage output. Add descriptions.
(print_version): New function.
(longopts): Accommodate new version option.
(opts): Ditto.
(main): Ditto.
2002-05-13 Christopher Faylor <cgf@redhat.com>
* kill.cc (listsig): Display numeric id when given symbolic input.
2002-05-13 Christopher Faylor <cgf@redhat.com>
* kill.cc (usage): Show new options. Allow specification of output
stream.
(main): Implement 'h' option.
2002-05-13 Christopher Faylor <cgf@redhat.com>
* Makefile.in (kill.exe): Add as a specific target.
* kill.cc (longopts): New.
(opts): Ditto.
(get_sig): Accept const char * parameter. Return -1 on unknown signal.
(test_for_unknown_sig): New function.
(listsig): New function.
(main): Use getopt_long for option parsing. Implement -l, and -s
options. Use test_for_unknown_sig() to test for signal validity.
* mount.cc (longopts): Make static.
(opts): Ditto.
2002-05-12 Christopher Faylor <cgf@redhat.com>
* mount.cc (do_mount): Default to non-exec option for remote drives.
Report warnings before attempting a mount.
(longopts): Add no-executable option.
(mount_commands): Ditto.
(opts): Ditto.
(usage): Ditto. Indicate that system mount is now the default.
(main): Accommodate no-executable option. Make system mount the
default.
* umount.cc (usage): Indicate that system umount is now the default.
(main): Make system umount the default.
2002-05-07 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* dumper.cc (usage): Standardize usage output. Generalize to allow use
for help.
(longopts): New struct. Added longopts for all options.
(print_version): New function.
(main): Change getopt to getopt_long. Accommodate new help and version
options.
2002-03-29 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): Change call to exit() to a return statement.
* mkpasswd.c (main): Ditto.
2002-03-27 Joshua Daniel Franklin joshuadfranklin@yahoo.com
* mkpasswd.c (usage): Simplify usage output. Generalize to allow use
for help. Correct '?' typo to 'h'.
(longopts): Add version option.
(opts): Add 'v' version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter
changes.
2002-03-19 Christopher Faylor <cgf@redhat.com>
* mkgroup.c (usage): Use one just fprintf + string concatenation for
output message.
(print_version): Add void to function type and update copyright.
2002-03-16 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* mkgroup.c (usage): Simplify usage output. Generalize to allow use
for help. Correct '?' typo to 'h'.
(longopts): Add version option.
(opts): Add 'v' version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter
changes. Use usage to output help message.
2002-03-15 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): When generating group 513, check for computer's
primary domain instead of current user's domain.
2002-03-14 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c (main): When generating group 513, check for domain SID
if computer name isn't mapped to a SID.
2001-03-11 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* kill.cc (usage): Move to top of file.
(getsig): Ditto.
(forcekill): Ditto.
2002-03-06 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc: Reformat.
2002-03-06 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (longopts): Use correct short option for --version.
2002-03-06 Christopher Faylor <cgf@redhat.com>
* cygpath.cc: Reformat.
2002-02-27 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygpath.cc (print_version): New function.
(main): Accommodate new version function. Initialize 'o' to prevent
warning.
2002-02-27 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (main): Eliminate non-GNU formatting glitch.
2002-02-27 Christopher Faylor <cgf@redhat.com>
* ssp.c (help_desk): Fix compiler warning.
2002-02-27 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
Christopher Faylor <cgf@redhat.com>
Change appropriate globals to statics throughout.
* cygcheck.cc (usage): Simplify usage output. Generalize to allow use
for help.
(longopts): Add version option.
(opts): Add 'V" version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter
changes. Use usage to output help message.
002-02-19 Christopher Faylor <cgf@redhat.com>
* Makefile.in (CXXFLAGS): Add override so that HAVE_DECL_GETOPT is
defined.
(libbfd): Use -B rather than -L so that bfd from build directory is
correctly found.
(libintl): Ditto.
2002-02-15 Christopher Faylor <cgf@redhat.com>
* mount.cc (usage): Fix typo in output.
2002-02-14 Christopher Faylor <cgf@redhat.com>
* strace.cc (attach_process): Change CW_STRACE_ON to CW_STRACE_TOGGLE.
2002-01-31 Corinna Vinschen <corinna@vinschen.de>
* mkpasswd.c (main): Set default home path for 9x/Me if --path-to-home
isn't given.
2002-01-30 Corinna Vinschen <corinna@vinschen.de>
* passwd.cc (ChangePW): Add parameter to differ between called for
checking old password and called for changing password. If called
for checking old password, return non-zero only if password is surely
incorrect.
(main): Call ChangePW() with additional parameter.
2002-01-29 Christopher Faylor <cgf@redhat.com>
* dump_setup.cc (parse_filename): Don't consider '_' part of the
version.
2002-01-28 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc: Fix typo. Remove uid_t kludge. Rely on kludge in
sys/cygwin.h instead.
* getfacl.c: Add include to remove warning.
* mkgroup.c (main): Assign variables outside of parameter passing.
This seems to eliminate some compiler warnings.
2002-01-28 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc: Use specific cygwin includes, as required.
2002-01-28 Christopher Faylor <cgf@redhat.com>
* Makefile.in (MINGW_INCLUDES): Change cygwin include.
* strace.cc: Use specific cygwin includes, as required.
(load_cygwin): New function. Loads cygwin DLL, if necessary.
(attach_process): Attaches strace to a running process.
(dostrace): Accept pid argument. Attach to pid if supplied.
(usage): Describe -p option. Correct system description.
(longopts): Alphabetize.
(opts): Ditto.
(main): Ditto. Handle -p option.
2002-01-21 Christopher Faylor <cgf@redhat.com>
* Makefile.in (CXXFLAGS): Ensure that important settings are preserved
even when overriden by command line.
2002-01-21 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Build intermediate cygcheck.o to force use of MINGW_CXXFLAGS.
* cygcheck.cc (cygwin_info): Intitialize variable to quiet g++ warning.
(dump_sysinfo): Make variables unsigned to quiet g++ warnings.
* strace.cc (version_string): Rename from SCCSid.
(add_child): Remove unused variable.
(version): Use version_string. Avoid use of fprintf.
2002-01-21 DJ Delorie <dj@redhat.com>
* Makefile.in: Use CXX instead of CC to compile C++ sources.
2002-01-17 DJ Delorie <dj@redhat.com>
* cygcheck.cc (already_did): Avoid default constructors, which may
require exception support.
2001-01-16 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygpath.cc (main): Add options to show Desktop and Start
Menu's Programs directory for current user or all users.
Move bulk of DPWS options outside the getopt case statement.
* utils.sgml: Update cygpath section for ADPWS options.
2002-01-15 Joerg Schaible <joerg.schaible@gmx.de>
* cygpath.cc (doit): Empty file ignored using option -i.
2002-01-15 Mark Bradshaw <bradshaw@crosswalk.com>
* mkpasswd.c (print_win_error): Add a new function.
(enum_users): Use print_win_error.
(enum_local_groups): Ditto.
(main): Ditto.
2001-12-26 Jonathan Kamens <jik@curl.com>
* cygpath.cc (doit): Detect and warn about an empty path. Detect and
warn about errors converting a path.
(main): Set prog_name correctly -- don't leave an extra slash or
backslash at the beginning of it.
Fri Dec 14 14:04:37 2001 Jason Tishler <jason@tishler.net>
* mkpasswd.c (enum_users): Change to unconditionally use
the --path-to-home option, if supplied by the user. Use default
--path-to-home option value, if appropriate.
(usage): Change usage statement to reflect new semantics.
(main): Remove defaulting of the --path-to-home option.
Fri Dec 14 12:10:39 2001 Jason Tishler <jason@tishler.net>
* mkpasswd.c (opts): Add indication that '-p' option requires an
argument.
2001-12-11 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Add define to CXXFLAGS.
2001-12-03 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (usage): Add -c description.
* cygpath.cc (usage): Alphabetize options.
* strace.cc (usage): Ditto.
2001-11-21 Christopher Faylor <cgf@redhat.com>
* path.cc (cygpath): Don't consider cygdrive stuff when trying to derive
native paths.
2001-11-20 Mark Bradshaw <bradshaw@staff.crosswalk.com>
* mkpasswd.c: include lmerr.h
(main): New -u option to allow specifying a
specific user. If specified, groups aren't displayed and
output is limited to only the specified user.
(enum_users): If specific user is specified, via -u option,
display only that user's record. With -u use NetUserGetInfo
instead of NetUserEnum.
(load_netapi): Added netusergetinfo.
2001-11-15 Gary R. Van Sickle <g.r.vansickle@worldnet.att.net>
* strace.cc (main): Change getopt() to getopt_long().
Add support for help and version info.
Use new parse_mask() function for -m/--mask option.
(longopts): Add long options structure.
(opts): Move options string from getopts call to static var.
(usage): Print usage information.
(SCCSid): Version info.
(version): New function for displaying version info.
(parse_mask): New function supporting parsing of mnemonics,
hex, and basic expressions in masks.
(mnemonic2ul): New mnemonic parsing function.
(tag_mask_mnemonic): New type.
(mnemonic_table): New table of mnemonics for mnemonic2ul() to
search through.
2001-11-12 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Redefine output format slightly.
Print correct build number on 9x/ME systems.
2001-11-12 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (main): Slight formatting tweak.
2001-11-12 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Add some more details.
2001-11-12 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Print more detailed OS information string
using OSVERSIONINFOEX information.
2001-11-11 Christopher Faylor <cgf@redhat.com>
* path.h: New file.
2001-11-11 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (scan_registry): Open registry with read-only access.
(main): Reflect argument change for dump_setup.
* dump_setup.cc (dump_setup): Add preliminary extra argument for future
use.
* path.cc (read_mounts): Open registry with read-only access.
2001-11-11 Christopher Faylor <cgf@redhat.com>
* cygcheck.cc (main): Display package info when '-s' is specified.
* dump_setup.cc (dump_setup): Change header. Remove typo. Always sort
packages output.
2001-11-11 Christopher Faylor <cgf@redhat.com>
* dump_setup.cc: New file.
* Makefile.in: Add info for dump_setup.o.
* cygcheck.cc (main): Recognize '-c' option for checking setup
installed base.
* path.cc (cygpath): Read mount table if not loaded.
2001-11-10 Christopher Faylor <cgf@redhat.com>
* Makefile.in (cygcheck.exe): Compile as -mno-cygwin executable.
* path.cc: New file.
* cygcheck.cc (init_paths): Use MS-DOS path syntax.
(cygwin_info): Properly display cygwin version numbers. Prettify some
output.
(dump_sysinfo): Calculate max names of posix and ms-dos paths for
prettier output.
2001-11-09 Corinna Vinschen <corinna@vinschen.de>
* cygcheck.cc (dump_sysinfo): Print more detailed OS information string.
2001-11-04 Corinna Vinschen <corinna@vinschen.de>
* getfacl.c (username): New function.
(groupname): Ditto.
(usage): Ditto. Add more user friendly help text.
(main): Add -n and --help option. Print names instead of IDs
unless -n option is given.
* setfacl.c (getperm): Tolerate whitespace and comment chars in input.
(getaclentry): Fix several input string misdetections.
(getaclentries): Allow - as input file name to read from stdin.
Tolerate whitespace and comment chars in input.
(usage): Add more user friendly help text.
(main): Add --help option.
2001-11-04 Egor Duda <deo@logos-m.ru>
* strace.cc (main): New option '-w'. Start traced process in separate
window. New option '-S x'. Flush buffered output every x seconds.
(create_child): Start child process in new window, when requested.
When requested, periodically flush debugging output.
2001-10-24 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Remove EXEEXT consideration. We always need .exe
extensions.
2001-10-20 Corinna Vinschen <corinna@vinschen.de>
* mkgroup.c: Avoid compiler warnings.
(print_special): New function.
(main): Print special accounts by calling print_special().
* mkpasswd.c: Avoid compiler warnings.
(enum_users): Print additional U-domain\username info in gecos
field when SIDs are printed.
(print_special): New function.
(main): Print special accounts by calling print_special().
2001-10-15 Christopher Faylor <cgf@redhat.com>
* mkpasswd.cc (enum_users): Shorten "unused" passwd field.
2001-10-13 Christopher Faylor <cgf@redhat.com>
* Makefile.in: Allow stdinc searching for dumper.
Tue Oct 9 21:59:00 2001 Christopher Faylor <cgf@cygnus.com>
* Makefile.in (MINGW_INCLUDES): Accommodate changes in Makefile.common.
Sun Oct 7 23:06:39 2001 Christopher Faylor <cgf@cygnus.com>
* kill.cc (main): Set exit value to 1 on invalid pid. Perform minor
cleanup.
Fri Sep 21 20:40:30 2001 Christopher Faylor <cgf@cygnus.com>
* Makefile.in (mingw_getopt.o): Ensure that newlib include directories
are not searched.
Thu Sep 20 21:00:20 2001 Christopher Faylor <cgf@cygnus.com>
* Makefile.in (MINGW_INCLUDES): Still need cygwin/include directory.
Wed Sep 19 12:22:08 2001 Christopher Faylor <cgf@cygnus.com>
* Makefile.in: Filter newlib includes from mingw compilation.
2001-09-14 Egor Duda <deo@logos-m.ru>
* dumper.cc (dumper::dumper): Print error code in case of error.
(dumper::add_thread): Ditto.
(dumper::collect_memory_sections): Ditto.
(dumper::dump_memory_region): Ditto.
(dumper::collect_process_information): Ditto.
(print_section_name): Fix formatting.
2001-09-13 Egor Duda <deo@logos-m.ru>
* dumper.cc (main): Properly recognize negative pids (used by w9x).
2001-09-09 Egor Duda <deo@logos-m.ru>
* dumper.cc (main): Change command-line arguments format to be
similar to gdb. Allow adding error_start=x:\path\to\dumper.exe to
CYGWIN environment variable to perform core dumping in case of
program crash.
(usage): Ditto.
Wed Sep 5 22:37:21 2001 Christopher Faylor <cgf@cygnus.com>
* Makefile.in (dumper): Change logic for libbfd and libintl so that
they will be found either in the build tree or the installed directory.
* mkpasswd.c (enum_users): Add a comment as a password for NT.
2001-09-03 Michael A Chase <mchase@ix.netcom.com>
* mount.cc (mount_commands): Don't write /cygdrive/u mount points.
2001-09-03 Michael A Chase <mchase@ix.netcom.com>
* mount.cc (longopts): Add mount-commands to options list.
(usage): Add mount-commands option.
(mount_commands): New function. Write commands to recreate current
mounts.
Sat Sep 1 15:58:11 2001 Christopher Faylor <cgf@cygnus.com>
* mount.cc (main): Eliminate excess arguments in printf.
2001-08-30 Egor Duda <deo@logos-m.ru>
* dumper.h: Update copyright notice.
* dumper.cc: Ditto.
* dumper.cc: (dumper::print_core_section_list): New function.
* dumper.h: (dumper::print_core_section_list): Declare it.
* dumper.cc (print_section_name): New function.
(dumper::collect_process_information): Augment debugging output.
Stop debugee processing if it posts double exception.
(usage): Fix typo in option name.
Tue Aug 28 14:45:02 2001 Christopher Faylor <cgf@cygnus.com>
* mount.cc (main): Issue correct warning for 'not enough arguments'.
2001-08-14 Joerg Schaible <joerg.schaible@gmx.de>
* cygpath.cc (main): Support -w for Windows (System) directories and
return physical correct orthography for the Windows System dir.
2001-07-14 Chris Genly <chgenly@alum.mit.edu>
* regtool.cc (find_key): Handle keys with only one subkey.
Wed Jun 27 22:46:10 2001 Christopher Faylor <cgf@cygnus.com>
* regtool.cc (find_key): Revert previous change.
Wed Jun 27 13:37:41 2001 Keith Starsmeare" <keith_starsmeare@yahoo.co.uk>
* regtool.cc (find_key): Allow '/' as a synonym for '\\'.
Fri Jun 15 00:49:21 2001 Christopher Faylor <cgf@cygnus.com>
* mkpasswd.c (main): Output passwd file in binary mode so that there
are no CRs in the file.
* umount.cc (remove_all_user_mounts): Don't try to remove /cygdrive
mounts.
Tue May 1 10:50:48 2001 Christopher Faylor <cgf@cygnus.com>
* mkpasswd.c (enum_users): Use /bin/bash as the default shell.
(main): Ditto.
Sat Apr 28 22:32:01 2001 Christopher Faylor <cgf@cygnus.com>
* passwd.cc (ttymnam): New function.
(main): Use ttynam() to report name of tty.
2001-04-19 Egor Duda <deo@logos-m.ru>
* dumper.cc (dumper::init_core_dump): Set architecture field in dump
header.
Mon Apr 16 15:08:00 2001 Corinna Vinschen <vinschen@redhat.com>
* mkgroup.c: Add function pointers `netlocalgroupgetmembers' and
`netgroupgetusers'.
(load_netapi): Load function pointers `netlocalgroupgetmembers'
and `netgroupgetusers'.
(enum_local_users): New function.
(enum_local_groups): Call `enum_local_users' for each group if
`print_users' is set.
(enum_users): New function.
(enum_groups): Call `enum_users' for each group if `print_users' is set.
(usage): Add usage text for `-u/--users'.
(longopts): Add option `--users'.
(opts): Add option character `u'.
(main): Set `print_users' according to option `-u/--users'.
Call `enum_local_groups' and `enum_groups' with additional parameter
`print_users'.
2001-04-15 Michael A Chase <mchase@ix.netcom.com>
* mount.cc (longopts): Add help to options list.
(opts): Add 'h' to options string.
* umount.cc (longopts): Add help to options list.
(opts): Add 'h' to options string and change 'R' to 'A'.
2001-04-13 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
* mkgroup.c (enum_groups): Use RID + offset specified an additional
argument as ID.
(usage): Add description of -o option.
(longopts, opts): Add specifications of -o/--id-offset option.
(main): Add -o option. Invoke enum_groups with specified offset.
* mkpasswd.c (enum_users): Just like mkgroup.c.
(usage, longopts, opts): Ditto.
(main): Add -o option. Invoke enum_users with specified offset only
against domain accounts.
2001-04-11 Egor Duda <deo@logos-m.ru>
* mkgroup.c (uni2ansi): Use native method to convert from Unicode
to multi-byte strings.
* mkpasswd.c (uni2ansi): Ditto.
(enum_users): Pass buffer size when converting string.
(enum_local_groups): Ditto.
* mkgroup.c (enum_groups): Ditto.
(enum_local_groups): Ditto.
Mon Apr 2 22:41:33 2001 Christopher Faylor <cgf@cygnus.com>
* mount.cc (main): Use getopt_long for parsing arguments.
(usage): Reformat, show long and short options.
* umount.cc (main): Ditto, all of the above.
Mon Apr 2 10:58:26 2001 Christopher Faylor <cgf@cygnus.com>
* mount.cc (show_mounts): Change format string to more closely resemble
UNIX when displaying mount table.
Sat Mar 17 21:46:06 2001 Christopher Faylor <cgf@cygnus.com>
* kill.cc (forcekill): Use dwProcessId when opening a process, not the
Cygwin pid.
Mon Mar 5 18:50:00 2001 Corinna Vinschen <vinschen@redhat.com>
* getfacl.c: Add copyright hint.
* setfacl.c: Ditto.
* strace.cc: Ditto.
Tue Jan 09 10:26:23 2001 Tony Sideris <tonys1110@home.com>
* regtool.cc (cmd_list): Add new registry display options.
(cmd_list): Add code to implement -p, -k, and -l options.
* regtool.cc (Fail): Add call to LocalFree to free memory allocated by
FormatMessage.
Wed Jan 10 09:16:57 2001 Christopher Faylor <cgf@cygnus.com>
* regtool.cc (translate): Ensure that 'c' is initialized.
(cmd_set): Ditto for rv.