History log of /freebsd-10.0-release/usr.bin/env/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


216370 11-Dec-2010 joel

Remove the advertising clause from UCB copyrighted files in usr.bin. This
is in accordance with the information provided at
ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change

Also add $FreeBSD$ to a few files to keep svn happy.

Discussed with: imp, rwatson


201386 02-Jan-2010 ed

Build usr.bin/ with WARNS=6 by default.

Also add some missing $FreeBSD$ to keep svn happy.


178811 06-May-2008 gad

Update the date on the man-page to reflect the date that the '-u name'
change was committed, instead of when I had first started writing it...


178289 17-Apr-2008 gad

Add the '-u name' option to the env command, which will completely unset
the given variable name (removing it from the environment, instead of
just setting it to a null value).

PR: bin/65649
MFC after: 2 weeks


171195 04-Jul-2007 scf

Significantly reduce the memory leak as noted in BUGS section for
setenv(3) by tracking the size of the memory allocated instead of using
strlen() on the current value.

Convert all calls to POSIX from historic BSD API:
- unsetenv returns an int.
- putenv takes a char * instead of const char *.
- putenv no longer makes a copy of the input string.
- errno is set appropriately for POSIX. Exceptions involve bad environ
variable and internal initialization code. These both set errno to
EFAULT.

Several patches to base utilities to handle the POSIX changes from
Andrey Chernov's previous commit. A few I re-wrote to use setenv()
instead of putenv().

New regression module for tools/regression/environ to test these
functions. It also can be used to test the performance.

Bump __FreeBSD_version to 700050 due to API change.

PR: kern/99826
Approved by: wes
Approved by: re (kensmith)


169177 01-May-2007 ache

Back out all POSIXified *env() changes.

Not because I admit they are technically wrong and not because of bug
reports (I receive nothing). But because I surprisingly meets so
strong opposition and resistance so lost any desire to continue that.

Anyone who interested in POSIX can dig out what changes and how
through cvs diffs.


169145 30-Apr-2007 ache

env calls setenv("name=value", "value", 1); which violates POSIX:
"The setenv( ) function shall fail if:
[EINVAL] The name argument is a null pointer, points to an empty string,
or points to a string containing an '=' character."
The fix (like all others in this subject) is backward-compatible.


148142 18-Jul-2005 gad

Fix minor memory leak when expanding ${variable}s

Noticed by: Dave Hart
MFC plans: after checking with re@


147971 13-Jul-2005 gad

Fix two minor parsing bugs in -S processing:
1) An unquoted space is always a separator, even when not "in_arg".
2) When a new destination buffer must be allocated during variable
substitution, only copy data from the active buffer to the new
one when we *are* "in_arg".
These were noticed when testing variable-substitution of variables
which have null values, and are not inside quoted strings...

MFC plans: after a few days, and re@ approval...


147532 22-Jun-2005 ru

Tidy up the markup.

Approved by: re (blanket)
OK'ed by: gad


147521 21-Jun-2005 gad

Fix a bug where the value of ${SOMEVAR} would simply disappear if there
was a separator character immediately before it. This wasn't likely to
happen in #-lines, but we might as well get it right. Also fix it so
that "" and "" will create a zero-length argument.

Approved by: re (blanket `env')


147518 21-Jun-2005 gad

Put in a more descriptive heading for the `env' command.

Noticed by: Matthew D Fuller
Approved by: re (blanket `env')


147517 21-Jun-2005 gad

Undo r1.14 to env.c. While it is unusual for environment variables to
start with a '/', they are more supported (by POSIX and SUSv3) than
filenames which have an '=' in them.

Noticed by: tjr
Approved by: re (blanket `env')


147493 20-Jun-2005 gad

Add the '-S' and '-P' options. The '-S' option can be used to split
apart a string, and supports some text substitutions. This can be
used to provide all the flexibility (and more!) that was lost by recent
changes to how the kernel parses #!-lines in shell scripts.

The '-P' option provides a way to specify an alternate set of directories
to use when searching for the 'utility' program to run. This way you can
be sure what directories are used for that search, without changing the
value of PATH that the user has set. Note that on FreeBSD 6.0, this
option is worthless unless the '-S' option is also used.

Approved by: re (blanket `env')


147492 20-Jun-2005 gad

If the `utility' specified starts with a '/' character, then execute it
without checking it for an equals-sign. If it starts with a slash, then
it cannot be a request to set the value of a valid environment variable.

Approved by: re (blanket `env')


147491 20-Jun-2005 gad

Move the code that clears the environment when `-i' is specified, so it that
it does not happen until all single-letter options are processed. This will
be important for the -S option, which will be coming soon.

Approved by: re (blanket `env')


147490 20-Jun-2005 gad

Add a '-v' option to `env', to make it easier to discover exactly what steps
it is doing, and what order it does them. This will be much more useful as
more options are added.

Approved by: re (blanket `env')


140368 17-Jan-2005 ru

Added the EXIT STATUS section where appropriate.


129436 19-May-2004 ru

Language and markup polishing.


126402 29-Feb-2004 schweikh

Fix grammar bogon.


121909 02-Nov-2003 ru

Removed (after the env(1)/printenv(1) split) extraneous arguments
to the .Nm macro.


115603 01-Jun-2003 tjr

Split the env(1) manpage off from printenv(1); there is not much point
in keeping them together. Mention that printenv is obsolescent.


102944 04-Sep-2002 dwmalone

ANSIify function definitions.
Add some constness to avoid some warnings.
Remove use register keyword.
Deal with missing/unneeded extern/prototypes.
Some minor type changes/casts to avoid warnings.

Reviewed by: md5


98968 28-Jun-2002 tjr

Discourage use of env(1)'s "-" flag by moving its description to the
Compatibility section of the manual page.


98418 19-Jun-2002 tjr

Indicate that env(1) allows you to supply arguments to the utility it
executes in the usage() message and manual page. Use "utility" instead of
"command" in both places to emphasise that shell builtins etc. will not work,
and to be consistent with the terminology used by POSIX.

PR: 39210
Submitted by: Danny J. Zerkel <dzerkel@columbus.rr.com>
MFC after: 1 week


92920 22-Mar-2002 imp

remove __P


91792 07-Mar-2002 mike

Leave the `copyright' variable exposed, since the main purpose of it
is to put a copyright in the object file.

Submitted by: bde


91004 21-Feb-2002 mike

Use new ID scheme.

Fix env(1)'s exit status to conform with SUSv3.

Submitted by: Tim Robbins <tim@robbins.dropbear.id.au>
MFC after: 2 weeks


90415 08-Feb-2002 markm

Remove leaf node WARNS?=2 (that mainly I added). This should
help the GCC3 transition and CURRENT in general.


79011 30-Jun-2001 dd

Set WARNS=2 on programs that compile cleanly with it; add $FreeBSD$
where necessary.

Submitted by: Mike Barcroft <mike@q9media.com>


50444 27-Aug-1999 sheldonh

Add ``-i'' option, which is the same as ``-''. The -i option is the
recommended option in the manpage, but the - option remains for
backward compatibility and is documented as such.

PR: 13363
Reported by: James Howard <howardjp@wam.umd.edu>
Reviewed by: bde


41568 06-Dec-1998 archie

Tweaks to allow compiling -Wall (mostly adding "const" to char rcsid[]).


27100 30-Jun-1997 charnier

Add usage().


24360 29-Mar-1997 imp

compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.


1591 27-May-1994 rgrimes

This commit was generated by cvs2svn to compensate for changes in r1590,
which included commits to RCS files with non-trunk default branches.