summaryrefslogtreecommitdiffstats
path: root/winsup/utils/mkpasswd.c
Commit message (Collapse)AuthorAgeFilesLines
* * mkpasswd.c: Properly define __progname as __declspec(dllimport).Christopher Faylor2009-10-021-1/+1
| | | | * mkgroup.c: Ditto.
* * mkgroup.c (enum_local_groups): Avoid error message if given groupCorinna Vinschen2009-08-111-0/+4
| | | | | | | name isn't found and return 0 to allow searching to proceed. Always return 0 or 1, not -1. (enum_groups): Avoid error message if given group name isn't found. * mkpasswd.c (enum_users): Ditto.
* * cygpath.cc (main): Only setlocale for LC_CTYPE category. FallbackCorinna Vinschen2009-05-151-0/+5
| | | | | | | | to UTF-8 if locale is "C". * ldd.cc (main): Ditto. * mkgroup.c (main): Ditto. * mkpasswd.c (main): Ditto. * passwd.c (main): Ditto.
* * mkpasswd.c (current_user): Don't use HOMEDRIVE/HOMEPATH to generateCorinna Vinschen2009-05-061-21/+6
| | | | | | | | | user's homedir. * mkgroup.c: Accommodate ctype changes. * mkpasswd.c: Ditto. * setfacl.c: Ditto. * ssp.c: Ditto.
* * mkgroup.c (enum_local_groups): Don't skip printing groups whenCorinna Vinschen2008-08-251-3/+1
| | | | | | | | | 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.
* * mkgroup.c (main): Keep correctly track of optional arguments.Corinna Vinschen2008-08-181-1/+1
| | | | * mkpasswd.c (main): Ditto.
* * mkgroup.c (main): Always unset environment variable POSIXLY_CORRECT.Corinna Vinschen2008-08-181-0/+5
| | | | | Keep track of optional argumnts and fix up optind afterwards. * mkpasswd.c (main): Ditto.
* * mkpasswd.c (main): Avoid printing system accounts when a single user name hasChristopher Faylor2008-08-171-1/+1
| | | | been requested.
* * Makefile.in (ALL_LDFLAGS): Add --enable-auto-import option to quiet ldChristopher Faylor2008-08-171-50/+62
| | | | | | | | | | | | | | | | | | | 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.
* * mkgroup.c (fetch_current_pgrp_sid): New function to fetch primaryCorinna Vinschen2008-08-151-16/+40
| | | | | | | | | | | | | | | | | | 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.
* * mkgroup.c (main): Fix test for duplicate domain/machine request.Corinna Vinschen2008-07-231-4/+13
| | | | * mkpasswd.c (main): Ditto.
* * mkgroup.c: Rework to allow per-domain/per-machine id_offset.Corinna Vinschen2008-07-231-72/+73
| | | | | | | | | 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.
* * mkgroup.c: Consolidate variable names.Corinna Vinschen2008-07-231-20/+140
| | | | | | | | | | | | | | | | | | (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.
* * mkgroup.c (enum_groups): Create full qualified groupname usingCorinna Vinschen2008-07-221-1/+2
| | | | | domain or servername, depending on printing domain or machine accounts. * mkpasswd.c (enum_users): Ditto for users.
* * Makefile.in (cygcheck.exe): Link against ntdll.Corinna Vinschen2008-07-221-397/+379
| | | | | | | | | | | | | | | | | | | | * 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.
* * mkgroup.c: Use statically linked functions throughout, except forCorinna Vinschen2008-07-091-125/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * cygpath.cc (do_sysfolders): Use cygwin_conv_path.Corinna Vinschen2008-03-121-2/+4
| | | | | | | | | | | | (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.
* * mkpasswd.c (main): Simplify generating SYSTEM entry. Add entriesCorinna Vinschen2008-02-281-15/+5
| | | | for LocalService and NetworkService accounts. Change comments.
* bad_keywordsChristopher Faylor2006-01-181-8/+8
|
* Align error message handling to mkpasswd's error messages throughout.Corinna Vinschen2005-09-211-13/+48
| | | | | | | | | | | | | | | | * 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-01-11 Pierre Humblet <pierre.humblet@ieee.org>Pierre Humblet2005-01-111-7/+10
| | | | | | | | | * 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.
* * mkgroup.c: Avoid compiler warnings throughout.Corinna Vinschen2003-11-141-5/+5
| | | | | * mkpasswd.c: Ditto. * passwd.c: Ditto.
* * mkpasswd.c (usage) Remove extra newline from description output.Joshua Daniel Franklin2003-04-261-1/+1
|
* * cygcheck.cc (usage) Add description output.Joshua Daniel Franklin2003-04-261-1/+1
|
* 2003-04-10 Pierre Humblet <pierre.humblet@ieee.org>Pierre Humblet2003-04-101-48/+49
| | | | | | | | | | | | | * 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-01 Pierre Humblet <pierre.humblet@ieee.org>Pierre Humblet2003-03-011-13/+23
| | | | | | | | * 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".
* * mkgroup.c: Fix copyright date.Corinna Vinschen2003-01-151-1/+1
| | | | | | | * mkpasswd.c: Ditto. * setfacl.c: Ditto. Fix ChangeLog typos.
* * mkpasswd.cc (current_user): Create.Corinna Vinschen2003-01-081-92/+195
| | | | | | | | | | | | | (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.
* * mkpasswd.c (main): Set pw_passwd field to '*' on 9x/Me.Corinna Vinschen2002-11-251-5/+5
|
* * cygpath.cc (close_arg): Remove unused static.Christopher Faylor2002-09-301-0/+1
| | | | | | | * mkgroup.c (enum_local_users): Avoid compiler warning. (enum_users): Ditto. * mkpasswd.c: Ditto throughout. * ssp.c: Ditto throughout.
* Add final newlines to utilsJoshua Daniel Franklin2002-09-151-1/+2
|
* * mkgroup.c (main): Don't print an entry for "Everyone".Corinna Vinschen2002-08-021-4/+6
| | | | | * mkpasswd.c (print_special): Set pw_gid to 544 for SYSTEM user. (main): Don't print an entry for "Everyone".
* * mkpasswd.cc (main): Don't reset to binmode if stdout is a terminal.Christopher Faylor2002-05-301-1/+2
|
* * mkgroup.c (main): Change call to exit() to a return statement.Corinna Vinschen2002-04-291-24/+53
| | | | | | | | | | | | * mkpasswd.c (main): Ditto. * 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.
* * mkpasswd.c (main): Set default home path for 9x/Me if --path-to-homeCorinna Vinschen2002-01-311-0/+3
| | | | isn't given.
* * mkpasswd.c (print_win_error): Add a new function.Corinna Vinschen2002-01-151-24/+26
| | | | | | (enum_users): Use print_win_error. (enum_local_groups): Ditto. (main): Ditto.
* * mkpasswd.c (enum_users): Change to unconditionally useCorinna Vinschen2001-12-141-12/+19
| | | | | | | 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.
* * mkpasswd.c (opts): Add indication that '-p' option requires an argument.Christopher Faylor2001-12-141-1/+1
|
* Patch by Mark Bradshaw <bradshaw@staff.crosswalk.com>:Corinna Vinschen2001-11-211-20/+49
| | | | | | | | | | | * 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.
* Change copyright.Christopher Faylor2001-11-211-1/+1
|
* * mkgroup.c: Avoid compiler warnings.Corinna Vinschen2001-10-201-112/+120
| | | | | | | | | | (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().
* * mkpasswd.cc (enum_users): Shorten "unused" passwd field.Christopher Faylor2001-10-151-1/+1
|
* * Makefile.in (dumper): Change logic for libbfd and libintl so that they willChristopher Faylor2001-09-061-1/+1
| | | | | be found either in the build tree or the installed directory. * mkpasswd.c (enum_users): Add a comment as a password for NT.
* * mkpasswd.c (main): Output passwd file in binary mode so that there are no CRsChristopher Faylor2001-06-151-0/+2
| | | | | in the file. * umount.cc (remove_all_user_mounts): Don't try to remove /cygdrive mounts.
* * mkpasswd.c (enum_users): Use /bin/bash as the default shell.Christopher Faylor2001-05-011-2/+2
| | | | (main): Ditto.
* Patch by Kazuhiro Fujieda <fujieda@jaist.ac.jp>:Corinna Vinschen2001-04-151-5/+14
| | | | | | | | | | | | * 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.
* * mkgroup.c (uni2ansi): Use native method to convert from UnicodeEgor Duda2001-04-111-8/+7
| | | | | | | | | 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.
* * mkpasswd.c: make default home directory /home/$user if oneCorinna Vinschen2000-12-071-19/+46
| | | | | | | can't be found in user registry. Allow user to override that with command line arg. (longopts): Fix typo in `local-groups' option. (main): Initialize `passed_home_path' before first usage.
* Make initial tabbing consistent.Christopher Faylor2000-12-071-109/+109
|
* * mkgroup.c (load_netapi): New function to load netapi32.dll functionsCorinna Vinschen2000-11-081-58/+125
| | | | | | | | | | | | | | | | dynamically so that mkgroup works on 9x/ME as well. Use corresponding function pointers throughout. (usage): Change to `int'. Change text to be conformant to mkpasswd. (main): Use `getlongopt' to process options. Special handling to create a group entry on 9x/ME. * mkpasswd.c (load_netapi): New function to load netapi32.dll functions dynamically so that mkpasswd works on 9x/ME as well. Use corresponding function pointers throughout. (usage): Change to `int'. Change text to be conformant to mkgroup. (main): Use `getlongopt' to process options. Special handling to create a passwd entry on 9x/ME. Change conditional to create an entry for the local administrators group when appropriate.