summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* spdx: initial adoption of licensing ID tags.Pedro F. Giffuni2017-11-185-1/+568
| | | | | | | | | | | | | | | | | The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Initially, only tag files that use BSD 4-Clause "Original" license. RelNotes: yes Differential Revision: https://reviews.freebsd.org/D13133
* Remove 'adding_user.7'Eitan Adler2017-11-011-1/+0
| | | | | | | Not to be confused with adduser. Not to be confused with useful information. Differential Revision: https://reviews.freebsd.org/D12848
* chpass(1): Check crypt(3) return and handle error appropriatelyConrad Meyer2017-10-041-3/+3
| | | | | | | | This change is spiritually similar to the earlier r231994. PR: 222756 Submitted by: Lubos Boucek <bouceklubos AT gmail.com> Obtained from: DragonflyBSD 2020c8fec4168a5020f984a093224fade3074b25
* pw useradd: Validate the user name before creating the entryEd Maste2017-08-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previouly it was possible to create users with spaces in the name with: pw useradd -u 1234 -g 1234 -n 'test user' The "-g 1234" is relevant, without it the name was already rejected as expected: [fk@test ~]$ sudo pw useradd -u 1234 -n 'test user' pw: invalid character ` ' at position 4 in userid/group name Bug unintentionally found with a salt config without explicit name entry: test user: user.present: - uid: 1234 - gid: 1234 - fullname: Test user - shell: /usr/local/bin/bash - home: /home/test - groups: - wheel - salt "Luckily" salt modules rarely bother with input validation either ... PR: 221416 Submitted by: Fabian Keil Obtained from: ElectroBSD MFC after: 1 week
* pw usermod: Properly deal with empty secondary group lists (-G '')Ed Maste2017-08-191-2/+2
| | | | | | | | | | | | | | | "pw usermod someuser -G ''" is supposed make sure that someuser doesn't have any secondary group memberships. Previouly it was a nop because split_groups() only intitialised "groups" if at least one group was specified. As a result the existing secondary group memberships were kept. PR: 221417 Submitted by: Fabian Keil Obtained from: ElectroBSD MFC after: 1 week Relnotes: yes
* MFhead@r322057Enji Cooper2017-08-042-8/+29
|\
| * Introduce the flopenat(3) function.Mariusz Zaborski2017-08-042-8/+29
| | | | | | | | | | Reviewed by: des, emaste Differential Revision: https://reviews.freebsd.org/D11690
* | Add HAS_TESTS to all Makefiles that are currently using theEnji Cooper2017-08-021-0/+1
|/ | | | | | `SUBDIR.${MK_TESTS}+= tests` idiom. This is a follow up to r321912.
* Convert traditional ${MK_TESTS} conditional idiom for including testEnji Cooper2017-08-021-3/+1
| | | | | | | | | | | directories to SUBDIR.${MK_TESTS} idiom This is being done to pave the way for future work (and homogenity) in ^/projects/make-check-sandbox . No functional change intended. MFC after: 1 weeks
* Don't depend on assert(3) getting evaluatedAlan Somers2017-05-101-1/+3
| | | | | | | Reported by: imp MFC after: 3 weeks X-MFC-With: 318141, 318143 Sponsored by: Spectra Logic Corp
* strcpy => strlcpyAlan Somers2017-05-101-1/+3
| | | | | | | Reported by: Coverity CID: 1006715 MFC after: 3 weeks Sponsored by: Spectra Logic Corp
* lib: initial use of reallocarray(3).Pedro F. Giffuni2017-04-213-3/+3
| | | | | | | | Make some use of reallocarray, attempting to limit it to cases where the parameters are unsigned and there is some theoretical chance of overflow. MFC afer: 2 weeks Differential Revision: https://reviews.freebsd.org/D9980
* Properly initialise with content of pw.conf(5) that was mistakenly ignored.Eugene Grosbein2017-03-241-2/+5
| | | | | | | | | | Also, respect "defaultgroup" if specified there. PR: 217934 Reported by: Victor Sudakov <vas@mpeks.tomsk.su> Reviewed by: bapt Approved by: bapt, vsevolod (mentor) MFC after: 1 week
* Adopt SRCTOP in usr.binWarner Losh2017-03-121-2/+2
| | | | | | | | | Prefer ${SRCTOP}/foo over ${.CURDIR}/../../foo and ${SRCTOP}/usr.bin/foo over ${.CURDIR}/../foo for paths in Makefiles. Differential Revision: https://reviews.freebsd.org/D9932 Sponsored by: Netflix Silence on: arch@ (twice)
* Convert absolute links to relative links.Rodney W. Grimes2017-03-071-5/+5
| | | | | | | Style.Makefile(9) has been ignored to produce minimal diffs. Approved by: grehan (mentor) MFC after: 1 week
* Renumber copyright clause 4Warner Losh2017-02-285-3/+251
| | | | | | | | | Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96
* Really restore the old behaviour for pw usermod -mBaptiste Daroussin2017-01-222-14/+4
| | | | | | | | It again reinstall missing skel files without overwriting changed one Add a regression test about it Reported by: ae MFC after: 3 days
* Readd a feature lost in pw(8) refactoringBaptiste Daroussin2017-01-221-0/+4
| | | | | | | | | | pw usermod foo -m It used to be able to (re)create the home directory if it didn't exists PR: 216224 Reported by: ae MFC after: 3 days
* Fix pkg groupshow <gid>Baptiste Daroussin2016-12-101-1/+1
| | | | | | PR: 204676 Submitted by: longwitz@incore.de MFC after: 2 days
* Remove a death threat from the FreeBSD sourcesConrad Meyer2016-12-011-5/+9
| | | | | Reported by: koobs@, araujo@, linimon@, bjk@, emaste@, jhb@, ngie@, cem@ Maintainer timeout: des@
* Use malloc()ed buffers instead of stack buffers in gr_copy() and pw_copy().Dag-Erling Smørgrav2016-11-282-26/+48
| | | | | | | | | This allows pw(8) to operate on passwd and group files with longer lines than could be accomodated by a stack buffer. It doesn't take more than a few hundred users to exceed 8192 bytes in /etc/group. MFC after: 3 weeks Sponsored by: The University of Oslo
* Upgrade our copies of clang, llvm, lldb, compiler-rt and libc++ to 3.9.0Dimitry Andric2016-11-240-0/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | release, and add lld 3.9.0. Also completely revamp the build system for clang, llvm, lldb and their related tools. Please note that from 3.5.0 onwards, clang, llvm and lldb require C++11 support to build; see UPDATING for more information. Release notes for llvm, clang and lld are available here: <http://llvm.org/releases/3.9.0/docs/ReleaseNotes.html> <http://llvm.org/releases/3.9.0/tools/clang/docs/ReleaseNotes.html> <http://llvm.org/releases/3.9.0/tools/lld/docs/ReleaseNotes.html> Thanks to Ed Maste, Bryan Drewery, Andrew Turner, Antoine Brodin and Jan Beich for their help. Relnotes: yes MFC after: 1 month
| * Merge ^/head r309106 through r309117.Dimitry Andric2016-11-241-0/+121
| |\ | |/ |/|
* | Add a warning against modifying this code without understanding it, andDag-Erling Smørgrav2016-11-241-0/+121
| | | | | | | | | | an example of how not to make it more portable. I've had this lying around uncommitted since 2009...
| * Merge ^/head r308491 through r308841.Dimitry Andric2016-11-195-2/+5
| |\ | |/ |/|
* | Speed up pw operations that edit /etc/group or /etc/passwdAlan Somers2016-11-185-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | r285050 fixed a bug in pw that could lead to /etc/passwd or /etc/group corruption on power loss. However, it fixed it by opening those files with O_SYNC, which is very slow, especially on ZFS. This change replaces O_SYNC with appropriately placed fsync()s instead, which is much faster. Using a ZFS tmpdir, the time to run pw's kyua tests drops from 245s to 35s. Reviewed by: allanjude, bapt, vangyzen, garga Tested on pfSense by: garga MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D8319
| * Merge ^/head r307736 through r308146.Dimitry Andric2016-10-313-0/+8
| |\ | |/ |/|
* | Close some file descriptor leaks in pwAlan Somers2016-10-213-0/+8
| | | | | | | | | | | | MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D8245
| * Merge ^/head r305687 through r305890.Dimitry Andric2016-09-161-1/+6
| |\ | |/ |/|
* | Add another badly-needed simple example to the pw(8) man page.Warren Block2016-09-131-1/+6
| |
| * Merge ^/head r303250 through r304235.Dimitry Andric2016-08-163-14/+3
| |\ | |/ |/|
* | Fix up setgrent(3) to have a POSIX-compliant prototype.Ed Schouten2016-07-312-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just like with freelocale(3), I haven't been able to find any piece of code that actually makes use of this function's return value, both in base and in ports. The reason for this is that FreeBSD seems to be the only operating system to have such a prototype. This is why I'm deciding to not use symbol versioning for this. It does seem that the pw(8) utility depends on the function's typing and already had a switch in place to toggle between the FreeBSD and POSIX variant of this function. Clean this up by always expecting the POSIX variant. There is also a single port that has a couple of local declarations of setgrent(3) that need to be patched up. This is in the process of being fixed. PR: 211394 (exp-run)
* | Remove usage of _WITH_GETLINE from usr.sbinBaptiste Daroussin2016-07-302-2/+0
|/
* Do not try to delete the home of the user if is is not a directory for exampleBaptiste Daroussin2016-07-231-0/+3
| | | | | | | | | "/dev/null" PR: 211195 Submitted by: rday <ryan@ryanday.net> Reported by: eniorm <eniorm@gmail.com> MFC after: 1 day
* pw should sanitize the argument of -w.Alan Somers2016-07-133-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise, it will silently disable the login for the selected account if the argument is unrecognizable. usr.sbin/pw/pw.h usr.sbin/pw/pw_conf.c usr.sbin/pw/pw_user.c Use separate rules to validate boolean parameters and passwd parameters. Error out if a password parameter cannot be parsed. usr.sbin/pw/tests/Makefile usr.sbin/pw/tests/crypt.c usr.sbin/pw/tests/pw_useradd.sh usr.sbin/pw/tests/pw_usermod.sh Add tests for the validation. Also, enhance existing password-related tests to actually validate that the correct hash is written to master.passwd. Reviewed by: bapt MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D6840
* Fix typo preventing pw {user,group}next -C from working as expectedBaptiste Daroussin2016-06-042-2/+2
| | | | | Reported by: Mike Selnet via forums.freebsd.org MFC after: 3 days
* Fix CID 1006692 in /usr/sbin/pw pw_log() function and other fixesDon Lewis2016-05-241-21/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | The length of the name returned from the $LOGNAME and $USER can be very long and it was being concatenated to a fixed length buffer with no bounds checking. Fix this problem by limiting the length of the name copied. Additionally, this name is actually used to create a format string to be used in adding log file entries so embedded % characters in the name could confuse *printf(), and embedded whitespace could confuse a log file parser. Handle the former by escaping each % with an additional %, and handle the latter by simply stripping it out. Clean up the code by moving the variable declarations to the top of the function, formatting them to conform with style, and moving intialization elsewhere. Reduce code indentation by returning early in a couple of places. Reported by: Coverity CID: 1006692 Reviewed by: markj (previous version) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D6490
* libutil: minor spelling fixes.Pedro F. Giffuni2016-05-181-1/+1
|
* Remove useless calls to basename().Ed Schouten2016-05-011-2/+1
| | | | | | | | | | | | | | There are a couple of places in the source three where we call basename() on constant strings. This is bad, because the prototype standardized by POSIX allows the implementation to use its argument as a storage buffer. This change eliminates some of these unportable calls to basename() in cases where it was only added for cosmetical reasons, namely to trim argv[0]. There's nothing wrong with setting argv[0] to the full path. Reviewed by: jilles Differential Revision: https://reviews.freebsd.org/D6093
* Add a single example of adding a user that roughly corresponds with theWarren Block2016-04-231-1/+13
| | | | | | adduser example in the Handbook. MFC after: 1 week
* MFHGlen Barber2016-04-045-18/+9
|\ | | | | | | Sponsored by: The FreeBSD Foundation
| * Adjust misleading wording of the -G option and simplify a fewWarren Block2016-03-281-11/+9
| | | | | | | | | | | | surrounding sentences. From a discussion on -ports. Reviewed by: David Wolfskill <david@catwhisker.org>
| * Remove some unneeded headersBaptiste Daroussin2016-03-264-7/+0
| | | | | | | | Found by 'include-what-you-use'
* | MFHGlen Barber2016-03-021-1/+1
|\| | | | | | | Sponsored by: The FreeBSD Foundation
| * Fix a typo that prevented pw(8) from setting a user's UID to 0.Mark Johnston2016-03-021-1/+1
| | | | | | | | | | MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
* | Restore the 'beforeinstall' for chpass(1), so files with theGlen Barber2016-01-281-0/+7
| | | | | | | | | | | | | | | | | | | | | | schg flag are handled before being replaced by a symbolic link. Fix passwd(1)/yppasswd(1) schg issue similarly to chpass(1). Note: These are likely temporary fixes while identifying any remaining files that are not marked as 'flags=schg' via mtree(8). Sponsored by: The FreeBSD Foundation
* | Ensure mtree(8) recognizes chpass(1) is schg.Glen Barber2016-01-281-17/+6
| | | | | | | | | | | | | | Convert hard links to symbolic links, and remove the 'beforeinstall' and 'afterinstall' chflags(8) execution. Sponsored by: The FreeBSD Foundation
* | Fix svn:mergeinfo, and MFH a commit that was previously missed.Glen Barber2016-01-040-0/+0
|\ \ | | | | | | | | | Sponsored by: The FreeBSD Foundation
* \ \ MFH r289384-r293170Glen Barber2016-01-044-14/+24
|\ \ \ | | |/ | |/| | | | Sponsored by: The FreeBSD Foundation
| * | Simplify code for parsing extra groupsBaptiste Daroussin2015-12-291-1/+1
| | |