Commit Graph

609 Commits

Author SHA1 Message Date
Corinna Vinschen 7e1fdc9e2c * 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 20:47:14 +00:00
Corinna Vinschen 4aeb44ee37 * 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 20:12:02 +00:00
Corinna Vinschen a1e1990348 * 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-22 14:40:05 +00:00
Corinna Vinschen 874149c80c * 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 15:07:48 +00:00
Corinna Vinschen b2dab9e8bc * utils.sgml: Add id's to all examples. 2008-07-17 10:32:03 +00:00
Corinna Vinschen 375a780e06 * 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-07-09 14:32:29 +00:00
Corinna Vinschen 3ad8ec8546 * setfacl.c (setfacl): Change from void to int. Return 2 in case of
error.
	(main): Return with error code from setfacl.
2008-05-22 18:56:26 +00:00
Corinna Vinschen 43334bd027 * Makefile.in (CYGWIN_BINS): Remove ipcrm and ipcs.
* ipcrm.c: Remove.
	* ipcs.c: Remove.
2008-05-15 11:01:31 +00:00
Corinna Vinschen f7483b41e0 * 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-04-23 11:37:58 +00:00
Corinna Vinschen b677a99b34 * 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-04-22 14:42:05 +00:00
Brian Dessent bff091bcfe * 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-16 17:04:02 +00:00
Corinna Vinschen 2b2b42cf59 * 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-12 12:47:09 +00:00
Brian Dessent 5b7296f637 * cygcheck.cc (find_app_on_path): Make buffer SYMLINK_MAX + 1
chars.
2008-03-11 18:43:11 +00:00
Brian Dessent 60efa4e546 * 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-11 17:20:02 +00:00
Brian Dessent 92108f4e26 * Makefile.in (install): Don't install the testsuite. 2008-03-09 09:41:42 +00:00
Brian Dessent 59fb00ae07 * 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-09 04:10:10 +00:00
Brian Dessent 68d2dd03a3 * Makefile.in: Reorganize considerably, using GNU make's
static pattern rules and target-specific variables.
2008-03-08 17:52:49 +00:00
Corinna Vinschen 11cd2378b0 * mkpasswd.c (main): Simplify generating SYSTEM entry. Add entries
for LocalService and NetworkService accounts.  Change comments.
2008-02-28 11:11:12 +00:00
Corinna Vinschen 2652ae1036 * 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.
2008-01-13 13:41:45 +00:00
Dave Korn 9c4d008ca5 * 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-29 19:26:56 +00:00
Brian Dessent ec62ba9577 * 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-21 03:32:46 +00:00
Corinna Vinschen 582bae5d10 * regtool.cc (opts): Add missing 'W'. 2007-12-07 09:37:46 +00:00
Corinna Vinschen 9408cf38dd * 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-12-06 18:26:18 +00:00
Dave Korn d848b3419f 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-31 00:39:41 +00:00
Dave Korn 64b94981dc * 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-08-03 19:41:48 +00:00
Corinna Vinschen 4db1416f76 Add missing ChangeLog entry. 2007-07-24 19:17:05 +00:00
Corinna Vinschen dd67e69634 * dumper.cc: Change license to plain GPLv2 + later.
* dumper.h: Ditto.
	* parse_pe.cc: Ditto.
2007-07-24 19:08:23 +00:00
Christopher Faylor 82f123e5c6 * strace.cc (create_child): Don't convert a path from cygwin format unless it
has a slash.
2007-07-23 21:03:59 +00:00
Christopher Faylor 99b0856099 * strace.cc (usage): Add missing description for -q. 2007-07-10 00:57:30 +00:00
Christopher Faylor 5c8891e962 * cygwin/strsig.cc (__signals): New macro.
(sys_sigabbrev): New array of signal strings, patterned after linux.
(siglist): Use __signals.
* cygwin/include/cygwin/signal.h (sys_sigabbrev): Define.
* cygwin/include/cygwin/version.h: Bump API minor version to 177.

* utils/Makefile.in (kill.exe): Remove reliance on libiberty.
* utils/kill.cc (strsigno): New function patterned after libiberty but using
newly exported cygwin array.
2007-07-10 00:12:54 +00:00
Christopher Faylor f0136ac908 * 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-06-04 01:57:16 +00:00
Corinna Vinschen 8a11b13ff0 * dumper.cc (dumper::prepare_core_dump): Record a phdr for each section. 2007-05-29 08:08:06 +00:00
Corinna Vinschen df1841c310 * 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-29 07:54:45 +00:00
Corinna Vinschen fc2000254c * 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-05-23 16:45:03 +00:00
Christopher Faylor c99e136f3d * utils/cygpath.cc (get_long_path_name_w32impl): Close handles returned by
FindFirstFile.
2007-03-31 00:03:25 +00:00
Christopher Faylor e7fd6e5738 * cygwin/external.cc (cygwin_internal): Implement CW_SET_DOS_FILE_WARNING.
* cygwin/include/sys/cygwin.h: Define CW_SET_DOS_FILE_WARNING.
* utils/mount.cc (main): Turn dos file warnings off since we know what we're
doing.
2007-03-30 13:36:06 +00:00
Corinna Vinschen 8782b2a2af * ipcs.c (_POSIX2_LINE_MAX): Drop definition. 2007-02-22 10:53:37 +00:00
Corinna Vinschen 7db9fabc83 * cygcheck.cc (dump_sysinfo): Add "not supported" to osname on 9x
machines.  Drop "not supported" for Vista.  Drop "Longhorn" text
	for now.
2007-02-20 16:41:54 +00:00
Corinna Vinschen ca9029913a * 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.
2007-01-09 12:17:05 +00:00
Corinna Vinschen f2af71ea96 * 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-21 09:59:04 +00:00
Christopher Faylor 6dcb2ec441 * dumper.cc: Add an include to accommodate new include/elf usage. 2006-12-11 19:17:17 +00:00
Christopher Faylor fc32d70841 correct email address 2006-12-11 18:58:40 +00:00
Christopher Faylor c2b8862303 * mount.cc (do_mount): Avoid unnecessary cygwin_conv_to_win32_path and pass
POSIX path directly - this avoids a cygwin DLL warning.
2006-12-10 21:50:06 +00:00
Corinna Vinschen 70158cafd7 * 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-21 17:19:29 +00:00
Corinna Vinschen 3c256e38f9 * 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-19 09:08:44 +00:00
Corinna Vinschen 53930874cb * regtool.cc (KEY_WOW64_64KEY): Drop definition. Instead define
WINVER to 0x0502 before including windows.h.
2006-10-16 19:34:27 +00:00
Corinna Vinschen 40c60b89d5 * 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-16 18:00:06 +00:00
Corinna Vinschen cea9b62102 * 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-10-05 17:24:13 +00:00
Christopher Faylor 56ec0f9c9c * Makefile.in: Fix -ntdll typo.
* cygcheck.cc (main): Restore POSIXLY_CORRECT before displaying user's
environment.
2006-09-12 15:14:51 +00:00
Corinna Vinschen fb43e6237c * path.cc (vconcat): Don't convert backslahes to slashes.
(cygpath): Return native path with all backslashes.
2006-08-03 15:29:30 +00:00
Corinna Vinschen 2dba45f4aa * 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-08-02 09:48:18 +00:00
Corinna Vinschen acc31d1a90 * cygpath.cc (get_long_name): Fallback to get_long_path_name_w32impl. 2006-07-31 07:31:56 +00:00
Corinna Vinschen bc31293a0d * 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-27 21:07:33 +00:00
Corinna Vinschen e60e8d3b0e * Makefile.in: Build setmetamode.exe.
* setmetamode.c: New file.
2006-07-03 16:00:58 +00:00
Christopher Faylor 99fc5e10f3 update to newer autoconf 2006-05-24 16:59:03 +00:00
Christopher Faylor 6265ac10be * strace.cc (proc_child): Propagate return code from child process.
(dostrace): Ditto.
(main): Ditto.
2006-05-24 16:50:50 +00:00
Corinna Vinschen 17c8ac3992 * 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-03-03 09:43:35 +00:00
Corinna Vinschen 4fc92aa730 * 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 12:17:47 +00:00
Corinna Vinschen 32410d2175 * ps.cc (main): Set aflag if -p option is given. 2006-02-17 11:16:23 +00:00
Corinna Vinschen df4f13b723 * 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-16 11:17:19 +00:00
Corinna Vinschen 96a4362c92 * regtool.cc (usage): Clarify help for "-K". 2006-02-15 10:57:17 +00:00
Corinna Vinschen 9d1c0a6053 * cygcheck.cc (find_on_path): Update copyright text. 2006-02-08 14:19:40 +00:00
Corinna Vinschen e699adfce5 * cygcheck.cc (find_on_path): Create copy of rv on successful access
check, since rv can be reused in subsequent calls.
2006-02-08 14:13:28 +00:00
Christopher Faylor 3c09c0fb25 * cygcheck.cc (common_paths): Add "patch". 2006-01-19 21:16:38 +00:00
Christopher Faylor 101b3cb01a * cygcheck.cc (init_paths): Record first_nonsys_path.
(find_on_path): Start on first nonsys path when !search_sysdirs.
2006-01-19 20:17:11 +00:00
Christopher Faylor ecd4fba273 white space 2006-01-19 18:57:41 +00:00
Christopher Faylor 25ef7a93b6 Wasn't going to check this in but since it did get checked in, here's a ChangeLog. 2006-01-18 16:11:53 +00:00
Dave Korn 79f24ec37d * cygpath.cc (dowin): Remove stray debugging printf statement. 2006-01-18 12:34:59 +00:00
Corinna Vinschen 3d7e89f8a2 * Makefile.in: Replace etcdir with sysconfdir. 2006-01-17 12:33:46 +00:00
Corinna Vinschen 8581551218 * 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-15 09:29:02 +00:00
Corinna Vinschen 053d5eed93 * cygcheck.cc (dump_sysinfo): Convert k32 to HMODULE. 2006-01-13 15:36:29 +00:00
Corinna Vinschen 67066cabad * 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-13 13:39:05 +00:00
Christopher Faylor 951bd8e9f1 * cygcheck.cc: Replace ` with ' throughout. 2006-01-12 17:43:53 +00:00
Christopher Faylor 2ea1dced21 * cygcheck.cc (dump_sysinfo): Report the failing drive to prevent having to
guess.
2006-01-05 18:31:26 +00:00
Christopher Faylor 5d97040501 *** cygwin DLL Changes:
* child_info.h (CURR_CHILD_INFO_MAGIC): Reset.
(child_info::dwProcessId): Delete.
(child_info::straced): New variable.
(child_info::handle_fork): New member function.
* dcrt0.cc (in_forkee): New global variable.
(__cygwin_user_data::forkee): Mark as obsolete.
(do_global_ctors): Use in_forkee rather than user_data->forkee.
(get_cygwin_startup_info): Ditto.  Deal with new straced field to allow strace
to deal with children of attached processes.
(initial_env): Accommodate changes to strace::hello.
(child_info_fork::handle_fork): Rename from plain old 'handle_fork'.  Move
alloc_stack() call elsewhere.
(dll_crt0_0): Fill out more of user_data.  Reference handle_fork via fork_info.
Add some debugging output.
(_dll_crt0): Don't wait for sync thread if sync_startup is invalid.  Zero
sync_startup here.  Call alloc_stack() here, if appropriate.
(dll_crt0_1): Use in_forkee rather than user_data->forkee.
(dll_crt0): Ditto.
* malloc_wrapper.cc (malloc_init): Ditto.
* dll_init.cc (in_forkee): Remove local static version of this variable.
(dll_list::load_after_fork): Don't set in_forkee here.
* external.cc (cygwin_internal): Use strace method rather than accessing field
directly.
* fhandler.cc (fhandler_base::read): Ditto.
* fhandler_tty.cc (fhandler_tty_common::__acquire_output_mutex): Ditto.
* fork.cc (frok::parent): Invoke strace write_childpid to communicate with
potential strace.
(child_copy): Add more detail to debugging output.
* init.cc (calibration_id): New static variable.
(prime_threads): Set sync_startup to invalid handle if we already know about
thread_func_ix.  Use static calibration_id to hold calibration thread id.
* munge_threadfunc (munge_threadfunc): Don't try to debug if we don't find
threadfunc_ix.
(dll_entry): Avoid calling munge_threadfunc and _cygtls::remove on non-cygwin
threads invoked during process startup.
* pinfo.cc (set_myself): Always call strace.hello here regardless of DEBUGGING.
* sigproc.cc (child_info::child_info): Remove spurious handling of dwProcessId.
Set straced as appropriate.
* spawn.cc (spawn_guts): Rename ciresrv to ch.  Invoke strace write_childpid to
communicate with potential strace.
* strace.cc: Include child_info.h.
(strace::hello): Remove inited test.  Use active() method to test if strace has
been activated.  Handle case where we are started before
(mypid): New function.
(strace::vsprntf): Try to deal more intelligently with case where progname may
not be filled out.  Put pid in parentheses if it is a windows pid rather than a
cygwin pid.  myself has been filled out.
(strace::write_childpid): New function for notifying strace about the creation
of children.
(strace::vprntf): Use strace method rather than accessing field directly.
(strace_printf): Ditto.
(strace::wm): Ditto.
* winsup.h (in_forkee): Declare.
* include/sys/strace.h (strace::write_childpid): Declare new function.
(strace::attached): Define new function.
(strace::active): Ditto.
(strace::active_val): Ditto.
(_STRACE_ON): Delete.
(_STRACE_OFF): Ditto.
(define_strace0): Use strace method rather than accessing field directly.
(strace_printf_wrap): Ditto.
(strace_printf_wrap1): Ditto.

*** cygwin utils changes:
* 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 20:46:34 +00:00
Christopher Faylor 10e4168d84 * cygcheck.cc (common_apps): Add crontab, vi, vim. 2005-12-29 19:23:46 +00:00
Corinna Vinschen 14df41c155 * dump_setup.cc (package_find): Fix is_alias computation for "/usr/lib". 2005-12-19 16:58:33 +00:00
Christopher Faylor bc0d578d39 * cygcheck.cc (common_apps): Add a few more binaries to look for. 2005-12-15 03:36:14 +00:00
Christopher Faylor 801d6cc753 * 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-12-05 16:39:06 +00:00
Christopher Faylor a39cfda7ba * 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-11-22 17:19:17 +00:00
Corinna Vinschen f3a61fc4aa Fix typo. 2005-09-21 22:27:38 +00:00
Corinna Vinschen d829da1423 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 DcGetDcNameW.
	(dsgetdcname): New function pointer for DcGetDcNameW.
	(load_netapi): Get DcGetDcNameW address.
	(main): If DcGetDcNameW is available, use it.
	* mkpasswd.c (PDOMAIN_CONTROLLER_INFOW): Define return type of
	DcGetDcNameW.
	(dsgetdcname): New function pointer for DcGetDcNameW.
	(load_netapi): Get DcGetDcNameW address.
	(main): If DcGetDcNameW is available, use it.  Rename local variable
	domain_name_specified to domain_specified as in mkgroup.c.
2005-09-21 22:26:08 +00:00
Corinna Vinschen b17b7644d5 * 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-09-08 09:24:41 +00:00
Corinna Vinschen 4fa0a39865 * 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-18 20:25:43 +00:00
Brian Dessent 9a99dcd39c * cygcheck.cc (dump_sysinfo_services): Properly null-terminate 'buf'.
Avoid extraneous cygrunsrv invocation if 'verbose' is true.
2005-08-17 00:52:43 +00:00
Corinna Vinschen bb002a4968 * mount.cc (longopts): Fix typo which disallows --options option. 2005-08-03 09:23:39 +00:00
Christopher Faylor 0eccec28cc * cygcheck.cc (find_on_path): Perform .exe magic on non-PATH search. 2005-07-19 21:00:34 +00:00
Christopher Faylor 27eb5dbc70 * cygcheck.cc (track_down, cygcheck): Return true on success.
(main): Reflect cygcheck failures in exit status.
2005-07-05 21:41:37 +00:00
Corinna Vinschen d1ce2c4a15 * parse_pe.c (exclusion::sort_and_check): Remove crude cast. 2005-06-14 12:42:57 +00:00
Corinna Vinschen 26797de314 * 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-30 15:49:31 +00:00
Christopher Faylor cba3b11fc5 * cygcheck.cc (load_cygwin): Make half-hearted attempt to work with older DLLs.
* strace.cc (load_cygwin): Ditto.
2005-05-27 15:45:53 +00:00
Corinna Vinschen 827cff7fe2 * 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-23 09:54:44 +00:00
Christopher Faylor f609f58d32 * cygcheck.cc (load_cygwin): Remove debugging statement. 2005-05-20 16:50:39 +00:00
Christopher Faylor ceb7fa1c4a * 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-20 16:38:42 +00:00
Christopher Faylor ac674bc896 * cygcheck.cc (cygwin_internal): Define as a "C" function.
* strace.cc (cygwin_internal): Ditto.
* cygpath.cc (print_version): Update copyright.
2005-05-17 01:26:16 +00:00
Christopher Faylor 41dcb6199c * cygcheck.cc (load_cygwin): Avoid calling putenv with a NULL path. 2005-05-16 03:18:29 +00:00
Corinna Vinschen 90253b8276 * cygcheck.cc (load_cygwin): Don't touch $PATH for now.
(print_version): Fix copyright.
	* strace.cc (print_version): Ditto.
2005-05-15 12:29:47 +00:00
Christopher Faylor 180cd17fa1 * mount.cc (mount_commands): Display "-X" option when appropriate. 2005-05-13 20:24:20 +00:00
Christopher Faylor f991d0e53e * cygcheck.cc (nuke): New function.
(load_cygwin): New function.
(main): Use load_cygwin to load argv/envp from cygwin environment, if
appropriate.
2005-05-09 01:56:34 +00:00
Christopher Faylor 26c07f704b * 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-09 01:21:43 +00:00
Christopher Faylor 0d235234c5 * mount.cc (usage): Clarify action of -m option. 2005-05-01 15:50:02 +00:00
Dave Korn 65e941162d * path.cc (getmntent): Add previously-omitted 'noexec' and 'managed'flags to
mnt_opts string if present in mount flags.
2005-04-29 16:39:34 +00:00
Christopher Faylor 6f4a176f07 * mount.cc (mount_commands): Display "-X" option when appropriate. 2005-04-25 14:40:53 +00:00
Corinna Vinschen a30482a386 * utils.sgml (mount): Clarify setting cygdrive prefix for user
and system-wide.
2005-04-20 12:25:43 +00:00
Corinna Vinschen 0f0595abd9 * 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-24 14:48:15 +00:00
Christopher Faylor 4534561877 * kill.cc (getsig): Rectify bug introduced by 2005-02-26 change. Don't pad
signal name with spaces.
2005-03-08 04:06:26 +00:00
Corinna Vinschen a593a4c5e3 * strace.cc (handle_output_debug_string): Fix compiler warning. 2005-03-07 10:24:23 +00:00
Christopher Faylor 5f8e4efa67 * cygpath.cc (usage): Pass in one more copy of program_name to printf to avoid
a SEGV.
2005-03-06 18:00:03 +00:00
Christopher Faylor 9dc6005ae2 * regtool.cc (opts): The argument to 'K' is not optional.
(main): Revert previous change.  Just let getopt deal with missing argument.
2005-02-27 17:55:54 +00:00
Christopher Faylor 2391eea57e * regtool.cc (main): Avoid a SEGV when nothing follows -K. 2005-02-27 06:10:58 +00:00
Christopher Faylor 78d9eaa5ea * kill (getsig): Avoid buffer overflow when generating a signal name.
* strace.cc (handle_output_debug_string): Make error a little more specific.
2005-02-27 03:03:19 +00:00
Joshua Daniel Franklin 4c6344923e * cygpath.cc (usage): Clarify help output to indicate acceptance
of multiple file names as arguments.
2005-02-24 04:32:45 +00:00
Christopher Faylor 459a956197 * 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-16 17:13:51 +00:00
Pierre Humblet 114b7248ee 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.
2005-01-11 23:03:24 +00:00
Bas van Gompel d26eb2a13b * cygcheck.cc (eprintf): New function. 2004-11-18 05:20:23 +00:00
Bas van Gompel cd1ab47e38 * 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-16 05:16:59 +00:00
Pierre Humblet 87b838398a 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-13 16:30:19 +00:00
Christopher Faylor 213c7a7d94 * cygcheck.cc: Change "keyeprint" to "display_error" throughout. 2004-11-11 01:56:02 +00:00
Christopher Faylor 28fbe53af8 * cygcheck.cc (main): Allow a '-l' without an additional argument. 2004-11-11 01:52:33 +00:00
Bas van Gompel 5ccf388ed8 * cygcheck.cc (keyeprint): New optional parameters: show_error and
print_failed.
2004-11-11 01:17:29 +00:00
Bas van Gompel fe5cd1608b * cygcheck.cc (get_dword): Fix errormessage.
(cygwin_info): Ditto.
(track_down): Ditto.
(check_keys): Ditto.
2004-10-31 18:46:31 +00:00
Bas van Gompel ccf4c1e6cd * cygcheck.cc (dump_sysinfo): Warn about missing or multiple cygwin1
dlls.
2004-10-27 01:28:07 +00:00
Christopher Faylor 9a0fdd2315 whitespace 2004-10-25 21:20:09 +00:00
Bas van Gompel a3a401001a * cygcheck.cc (dump_sysinfo): Add leading newline before legend for
drive-list.
2004-10-25 16:11:41 +00:00
Christopher Faylor 4bfc614b42 fix whitespace, update some copyrights 2004-10-25 15:49:36 +00:00
Christopher Faylor bc4ab99276 Remove CRs 2004-10-25 15:35:41 +00:00
Bas van Gompel be1d479e09 * 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-22 01:29:10 +00:00
Christopher Faylor be957eb563 * cygcheck.cc (dump_sysinfo): Allow for larger drives in drive-list. Change
``Used'' to ``Free'' in helptext-title for drive-list.
2004-10-21 00:06:37 +00:00
Corinna Vinschen eedf24742c * cygcheck.cc (pretty_id): Don't let i become negative. Fix
printf-format.
2004-10-18 10:25:38 +00:00
Christopher Faylor 3f8c5ee627 fix date 2004-10-18 01:47:00 +00:00
Christopher Faylor 0ffa77a9f5 * cygcheck.cc (pretty_id): Allocate space for ')' in uid and guid. 2004-10-18 01:44:55 +00:00
Christopher Faylor 0597641a74 * cygcheck.cc (pretty_id): Allocate space for trailing '\0' on uid and guid. 2004-10-17 23:31:23 +00:00
Christopher Faylor 167f0d8513 * cygcheck.cc (pretty_id): Don't exit on id error. Fix size calculations. 2004-10-15 13:57:56 +00:00
Christopher Faylor 902edd4512 * cygcheck.cc (pretty_id): Correct column calculations. Abort if id is acting
funny.
2004-10-14 17:35:46 +00:00
Christopher Faylor a82955fa29 minor change 2004-10-11 02:27:43 +00:00
Christopher Faylor 76ad4d0a6e * cygcheck.cc (add_path): Don't leak memory when path is already in ``paths''. 2004-10-10 17:07:23 +00:00
Christopher Faylor 0795a24552 * cygcheck.cc (dump_sysinfo): Warn about trailing (back)slash on mount entries. 2004-10-09 23:19:38 +00:00
Christopher Faylor 82e127caac * cygcheck.cc (dump_sysinfo): Don't warn about empty path components, just
display ``.''.
2004-10-09 23:15:36 +00:00
Corinna Vinschen 4f8dc86255 * strace.cc (_impure_ptr): Remove. 2004-10-06 09:51:11 +00:00
Corinna Vinschen 5f175ea697 * cygcheck.cc (dump_sysinfo): Warn about empty path-components. 2004-10-06 09:46:40 +00:00
Corinna Vinschen a5aa8c3e3a * cygcheck.cc (pretty_id): Close pipe. 2004-10-04 09:42:08 +00:00
Corinna Vinschen 79de498006 * dump_setup.cc (dump_setup): Remove unneeded strlen when check_files
is not set.
2004-09-23 10:32:20 +00:00
Corinna Vinschen 71de401447 * dump_setup.cc (dump_setup): Avoid trailing spaces on package-list. 2004-09-22 11:50:51 +00:00
Corinna Vinschen b103e0d732 * getfacl.c (main): Correct layout when nopt is set. 2004-09-15 07:51:06 +00:00
Corinna Vinschen e3118d880b * 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-07-12 16:52:16 +00:00
Alan Modra 64b49cceb5 * 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-06-15 02:18:51 +00:00
Joshua Daniel Franklin 1a8b65e301 2004-05-29 John Paul Wallington <jpw@gnu.org>
* ssp.c (usage): Add missing linefeed.
2004-05-30 06:33:02 +00:00
Christopher Faylor 1973881114 clarify last entry slightly. 2004-05-27 15:58:29 +00:00
Christopher Faylor 0512945eb5 * kill.cc (listsig): NSIG includes Signal 0, so we need to avoid calling
strtosigno with NSIG - 1.
2004-05-27 15:15:51 +00:00
Christopher Faylor 0cf94b8c62 * cygcheck.cc (dump_sysinfo): Remove "Win95/NT" from output. 2004-03-21 17:58:14 +00:00
Christopher Faylor befdf18b4d * cygpath.cc (usage): Don't issue helpful message if -i is used.
(from Igor Pechtchanski)
2004-03-15 21:34:12 +00:00
Corinna Vinschen 5817840adf * kill.cc (get_debug_priv): New function.
(forcekill): Call get_debug_priv before trying to kill process.
2004-03-13 18:11:13 +00:00
Christopher Faylor f135dd3ee7 * cygpath.cc (long_options): Add "mode" option.
(options): Ditto.
(usage): Report on new option.
(report_mode): New function.
(main): Implement -M option.
2004-02-25 01:23:20 +00:00
Christopher Faylor 7c03f79971 * 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-21 04:51:15 +00:00
Corinna Vinschen e92be2201a * ssp.c (opts): Add leading '+' to force posixly correct behaviour. 2004-02-14 19:43:07 +00:00
Corinna Vinschen 960471b1a6 * strace.cc (opts): Add leading '+' to force posixly correct
behaviour.
	(main): Revert POSIXLY_CORRECT manipulations.
2004-02-11 13:30:02 +00:00
Christopher Faylor 6dbfb93a04 * strace.cc (main): Guard against previous setting of POSIXLY_CORRECT. 2004-02-11 00:29:42 +00:00
Christopher Faylor c662f402aa * strace.cc: Update copyrights.
* cygcheck.cc: Update copyrights.
2004-02-10 16:15:53 +00:00
Christopher Faylor 744ed079bc * strace.cc (main): Ensure POSIXLY_CORRECT argument ordering.
* cygcheck.cc (main): Ditto.
2004-02-10 16:01:31 +00:00
Christopher Faylor 7dddf53f5c * cygcheck.cc (pretty_id): Make more robust in absence of id.exe. 2004-01-23 23:04:27 +00:00
Corinna Vinschen 30352c261c * cygpath.cc (dowin): Revert accidental checkin from November. 2004-01-22 09:21:56 +00:00
Corinna Vinschen f25babdf07 * mkgroup.c (main): Print "root" group with local admins group sid
and gid 0.
2003-11-26 15:47:44 +00:00
Corinna Vinschen e545df31d5 * Makefile.in: Add rules to build ipcrm and ipcs.
* ipcrm.c: New file.
	* ipcs.c: New file.
2003-11-19 18:50:52 +00:00
Corinna Vinschen 7326e3ffd9 Revert most of last check in to ChangeLog. It duplicated
accidentally a big bunch of old entries.
2003-11-19 10:11:46 +00:00
Corinna Vinschen 508682370b * mkgroup.c: Avoid compiler warnings throughout.
* mkpasswd.c: Ditto.
	* passwd.c: Ditto.
2003-11-14 19:14:43 +00:00
Corinna Vinschen 0a5ea9471b * cygpath.cc (main): Allow multiple pathnames on command line. 2003-11-07 18:30:35 +00:00
Corinna Vinschen 02bd05e386 * 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 10:54:47 +00:00
Corinna Vinschen 1f4e5e1571 * 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. Accomodate new options.
	(print_version): Fix copyright dates.
	(main): Accomodate new options for setting UF_PASSWD_CANT_CHANGE,
	UF_DONT_EXPIRE_PASSWD and UF_PASSWD_NOTREQD settings.
2003-11-04 10:30:35 +00:00
Christopher Faylor fa10472e4a * cygcheck.cc (pretty_id): Don't exec if `id' program is not found. 2003-10-17 17:19:31 +00:00
Christopher Faylor 7ed1b504b6 * kill.cc (main): Allow negative pids (indicates process groups). 2003-09-20 20:24:33 +00:00
Christopher Faylor b1e00863f3 * parse_pe.cc (exclusion::sort_and_check): Make error message a little more
explicit and ignore (hopefully) harmless region overlap.
2003-09-18 01:46:18 +00:00
Christopher Faylor a98a001169 * kill.c (forcekill): Wait for process to terminate even if TerminateProcess
says it failed.
2003-09-13 18:20:52 +00:00
Christopher Faylor 3a25635489 * Makefile.in: Tweak mingw libz.a detection to make it more reliably detect
when libz.a is not available.
2003-09-12 01:51:21 +00:00
Corinna Vinschen 59a7603554 * 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 16:24:26 +00:00
Corinna Vinschen a5ba4027f4 * getfacl (main): Remove extern declaration of optind.
* setfacl (main): Remove extern declaration of optarg and optind.
2003-09-11 07:55:51 +00:00
Christopher Faylor bd79b736d4 * 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-11 02:56:40 +00:00
Christopher Faylor b07b167eec * 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-11 02:00:42 +00:00
Christopher Faylor 704d8c321e * Makefile.in: More fixups to adjust for the fact that mingw_getopt.o is no
longer built.
2003-09-11 00:07:28 +00:00
Christopher Faylor 4a6890e76e * Makefile.in: Remove references to getopt since it is now part of mingwex. 2003-09-10 21:55:59 +00:00
Christopher Faylor 87f9911114 fix typo 2003-09-08 05:09:13 +00:00
Christopher Faylor 7b06693464 * Makefile.in (zlib_h): Rename libz.h -> zlib.h. 2003-09-08 04:29:34 +00:00
Christopher Faylor d31c5928dd * Makefile.in: Detect existence of mingw zlib headers and libraries. Build
cygcheck wihtout 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-08 02:50:02 +00:00
Christopher Faylor 1f602fd729 * dump_setup.cc (check_package_files): Don't fail on empty package. 2003-09-06 02:02:30 +00:00
Christopher Faylor e48feef96a * mount.cc (mount_commands): Ensure user mode is actually user mode and not the
default system mode.
2003-09-04 01:04:57 +00:00
Christopher Faylor ef58cd2f44 * kill.cc (forcekill): Silence some compiler warnings. 2003-09-01 02:40:16 +00:00
Christopher Faylor f6f88b66d2 * Makefile.in: Oops. Put the '...' in the right place. 2003-09-01 02:33:50 +00:00
Christopher Faylor 40d885eb7b * 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-09-01 01:57:44 +00:00
Corinna Vinschen 919497ee6b * dump_setup.cc (check_package_files): Strip leading / and ./ from
package file names.
2003-08-17 17:26:08 +00:00
Corinna Vinschen b723879025 * dump_setup.cc (package_find): Don't stop searching on missing
file list.
	(package_list): Ditto.

	* dump_setup.cc: (package_list): Make output terse unless
	verbose requested.  Fix formatting.
	(package_find): Ditto.
2003-08-16 09:09:09 +00:00
Corinna Vinschen 200f243c42 * cygcheck.cc (main): Fix some formatting and help text printing.
* 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 20:26:11 +00:00
Corinna Vinschen dae37d5d84 * regtool.cc (usage): Add missing linefeed. Move example to --help
text.  Fix forward slash description.
2003-08-15 08:58:54 +00:00
Corinna Vinschen e2b1a74c13 * dump_setup.cc (check_package_files): Fix extra '/' in filename.
Resize command buffer.  Fix buffer overflow bug.
2003-08-13 19:37:40 +00:00
Christopher Faylor e41630b08a * 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-10 01:07:04 +00:00
Christopher Faylor 58d4b72d33 * 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.
* dump_setup.cc (dump_setup): Remove redundant null check.  Add informative
message if package info not found.
2003-08-09 16:32:22 +00:00
Christopher Faylor 035df9eff5 * mount.cc (do_mount): Issue warning when using managed mount option on
non-empty directory.
2003-07-26 05:38:51 +00:00
Christopher Faylor ddb6762155 * configure.in: Use 'install-sh -c'.
* configure: Regenerate.
2003-07-26 01:53:18 +00:00
Christopher Faylor 7f4773b3ef * configure.in: Always use install-sh.
* configure: Regenerate.
2003-07-25 23:52:30 +00:00
Christopher Faylor baf77a53b0 * mount.cc (struct opt): Remove posix option. 2003-07-04 03:20:22 +00:00
Christopher Faylor 08604f02bc * 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-07-04 03:11:18 +00:00
Christopher Faylor 6806f4f6e2 * cygcheck.cc (pretty_id): Rework slightly to not rely on spaces. 2003-06-13 02:36:12 +00:00
Christopher Faylor 8d60a6029c clarify 2003-06-13 02:21:18 +00:00
Christopher Faylor cc3ce0bb5f Throughout, always return error when GetShortPathName returns 0. 2003-06-12 20:40:58 +00:00
Joshua Daniel Franklin 45bfd8ed74 * mkpasswd.c (usage) Remove extra newline from description output. 2003-04-26 22:33:00 +00:00
Joshua Daniel Franklin aa275fe010 * cygcheck.cc (usage) Add description output. 2003-04-26 21:52:03 +00:00
Pierre Humblet 57efd527df 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-04-10 01:14:18 +00:00
Christopher Faylor ce7a361072 * cygcheck.cc (dump_sysinfo): Ensure that CYGWIN environment variable is
correctly set.
2003-03-25 01:20:04 +00:00
Corinna Vinschen ef1aafb0f3 * getfacl.c (username): Fix ambiguous printf calls.
(groupname): Ditto.
	(main): Ditto.
2003-03-09 19:04:23 +00:00
Christopher Faylor 229f2bb465 * 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-04 05:30:50 +00:00
Pierre Humblet f78765dadd 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-03-01 16:38:26 +00:00
Christopher Faylor dbc49afd52 * 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-03-01 03:38:19 +00:00
Christopher Faylor 7ca68b7ec3 * cygpath.cc (doit): Allocate more space for non-path filename. 2003-02-12 22:48:13 +00:00
Christopher Faylor 3202ad2b9e * 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 21:34:34 +00:00
Corinna Vinschen eceb45bdff * dump_setup.cc (dump_setup): Compute the longest package name
and align columns properly.
2003-02-07 21:11:44 +00:00
Christopher Faylor 4a9cbef09d * cygcheck.cc (common_apps): Add some more apps.
* path.cc (get_cygdrive): Correctly set system flag.
2003-02-07 04:51:26 +00:00
Corinna Vinschen 92005b4cec * Makefile.in (ALL_LDFLAGS): Remove newlib/libm from tools paths.
(MINGW_LDFLAGS): Remove in favor of definition from Makefile.common.
2003-01-22 17:15:53 +00:00
Corinna Vinschen 3903b47b79 * mkgroup.c: Fix copyright date.
* mkpasswd.c: Ditto.
	* setfacl.c: Ditto.

	Fix ChangeLog typos.
2003-01-15 10:08:37 +00:00
Corinna Vinschen e410614acf * setfacl (usage): Remove double ":" for mask and other. 2003-01-10 11:39:19 +00:00
Corinna Vinschen f1c9046a57 * mkpasswd.cc (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.cc (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.
2003-01-08 17:38:11 +00:00
Christopher Faylor c6c890e21a minor reformatting 2002-12-25 23:49:40 +00:00
Corinna Vinschen 2b3ddfcd26 * 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-12-15 10:09:35 +00:00
Corinna Vinschen d1b6d5cd14 * mkpasswd.c (main): Set pw_passwd field to '*' on 9x/Me. 2002-11-25 15:12:50 +00:00
Corinna Vinschen 2d06bd1109 * setfacl.c (getperm): Set only `other' permission bits.
(getaclentry): Set a_id to -1 by default.
2002-11-24 18:07:30 +00:00
Corinna Vinschen ad2bc53e8f * getfacl.c (permstr): Use `other' permission bits for requesting
ace permissions.
2002-11-24 16:15:33 +00:00
Corinna Vinschen 7c4f9b9a05 * setfacl.c (usage): Add missing LF. 2002-11-08 10:22:58 +00:00
Christopher Faylor cf157504a8 * 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-31 02:40:26 +00:00
Christopher Faylor 3350721cff fix changelog 2002-10-19 11:59:14 +00:00
Christopher Faylor 7c51881531 * mount.cc (usage): Correctly report default mode. 2002-10-19 11:41:31 +00:00
Christopher Faylor 0fa64fa3a7 * 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-30 03:01:17 +00:00
Christopher Faylor 468b26c591 * cygcheck.cc: Include sys/time.h rather than time.h to avoid a compiler error. 2002-09-19 03:48:19 +00:00
Christopher Faylor 4ddb62e794 * cygcheck.cc: Reorder includes to avoid compiler error. 2002-09-17 17:13:21 +00:00
Joshua Daniel Franklin 98467dae59 Add final newlines to utils 2002-09-15 19:24:37 +00:00
Joshua Daniel Franklin 9b566b9695 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-09-15 15:19:49 +00:00
Christopher Faylor 403985a498 * regtool.cc (find_key): Add support for custom key separator.
(usage): Document it.
2002-08-13 15:37:32 +00:00
Corinna Vinschen 32c803daa2 * 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-08-02 11:14:35 +00:00
Christopher Faylor 212ed5e01e * configure.in: Check for libiconv.a.
* configure: Regenerate.
* Makefile.in: Add libiconv.a to libraries required for dumper.exe.
2002-07-07 00:54:38 +00:00
Christopher Faylor 3fde1c5826 * Makefile.in: Use MINGW stuff from Makefile.common. 2002-07-07 00:44:08 +00:00
Corinna Vinschen d183515c9f * 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-02 12:59:43 +00:00
Christopher Faylor 1050e57c9a * mount.cc (main): Ensure that mount_already_exists() also gets default flag
that is passed to do_mount.
* 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-07-01 20:54:35 +00:00
Christopher Faylor 33bd2d1268 * cygpath.cc (usage): Clean up usage output.
(dowin): Correct output of -t mixed for -ADHPSW options.
2002-06-19 02:09:41 +00:00
Corinna Vinschen 94a23f4860 * 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.

	* passwd.c (GetPW): Handle case of user-edited /etc/passwd
	with cygwin_internal (CW_EXTRACT_DOMAIN_AND_USER, ...).
2002-06-14 11:31:33 +00:00
Christopher Faylor 548e0dad4b * path.cc (cygpath): Change MOUNT_AUTO to MOUNT_CYGDRIVE.
(getmntent): Ditto.
2002-06-09 05:08:44 +00:00
Christopher Faylor 94cc482c64 * 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-09 04:54:32 +00:00
Christopher Faylor 60a3d46123 * mount.cc (opts): Remove '-i' option.
(usage): Ditto.
(main): Ditto.
(longopts): Remove --import-old-mounts option.
2002-06-09 00:33:27 +00:00
Christopher Faylor 2bd6505b39 * cygpath.cc: Add option to output windows paths in different formats: "dos"
and "mixed".
(main): Process options.
(doit): Check new options flags.
2002-06-07 19:25:26 +00:00
Corinna Vinschen 381fb8baa1 * regtool.cc (Fail): Be more verbose.
(find_key): Add support for remote registry access.
	(usage): Document it.
	* utils.sgml: Document it.
2002-06-07 11:12:16 +00:00
Christopher Faylor b841df7954 * strace.cc (main): Make toggle a local variable. 2002-06-07 01:37:20 +00:00
Christopher Faylor 80082f1ec4 * 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-07 01:36:17 +00:00
Christopher Faylor ba692ae9c0 * strace.cc (version): New global variable.
(usage): Accomodate stdout output.
(print_version): New function.
2002-06-06 02:55:10 +00:00
Christopher Faylor c240a7fcde * 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-06 00:36:12 +00:00
Christopher Faylor e6cd2312d6 * 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-04 01:31:28 +00:00