OpenBSD CVS

CVS log for src/usr.bin/awk/run.c


[BACK] Up to [local] / src / usr.bin / awk

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.86 / (download) - annotate - [select for diffs], Sat May 4 22:59:21 2024 UTC (2 weeks ago) by millert
Branch: MAIN
CVS Tags: HEAD
Changes since 1.85: +4 -4 lines
Diff to previous 1.85 (colored)

Update awk to the May 4, 2024 version.
Fixes a use-after-free bug with ARGV for "delete ARGV".

Revision 1.85 / (download) - annotate - [select for diffs], Thu Apr 25 18:33:53 2024 UTC (3 weeks, 2 days ago) by millert
Branch: MAIN
Changes since 1.84: +3 -3 lines
Diff to previous 1.84 (colored)

Update awk to the Apr 22, 2024 version.

 * fixed regex engine gototab reallocation issue that was introduced
   during the Nov 24 rewrite.

 * fixed use-after-free bug in fnematch due to adjbuf invalidating
   the pointers to buf.

Revision 1.84 / (download) - annotate - [select for diffs], Thu Jan 25 16:40:51 2024 UTC (3 months, 3 weeks ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5
Changes since 1.83: +12 -9 lines
Diff to previous 1.83 (colored)

Update awk to the Jan 22, 2024 version.

Revision 1.83 / (download) - annotate - [select for diffs], Tue Nov 28 20:54:38 2023 UTC (5 months, 2 weeks ago) by millert
Branch: MAIN
Changes since 1.82: +9 -7 lines
Diff to previous 1.82 (colored)

Update awk to the Nov 27, 2023 version.

Revision 1.82 / (download) - annotate - [select for diffs], Sat Nov 25 16:31:33 2023 UTC (5 months, 3 weeks ago) by millert
Branch: MAIN
Changes since 1.81: +3 -2 lines
Diff to previous 1.81 (colored)

Update awk to the Nov 24, 2023 version.

Revision 1.81 / (download) - annotate - [select for diffs], Wed Nov 22 01:01:21 2023 UTC (5 months, 3 weeks ago) by millert
Branch: MAIN
Changes since 1.80: +124 -150 lines
Diff to previous 1.80 (colored)

Update awk to the Nov 20, 2023 version.

This includes a rewrite of the fnematch() function as well as a
refactoring of the sub and gsub implementation.

Revision 1.80 / (download) - annotate - [select for diffs], Sat Oct 28 22:38:22 2023 UTC (6 months, 3 weeks ago) by millert
Branch: MAIN
Changes since 1.79: +2 -2 lines
Diff to previous 1.79 (colored)

substr: fix buffer overflow with utf-8 strings

We need to use u8_strlen(), not strlen(), to compute the length.
Otherwise, there may be an out of bounds write when writing the NUL
terminator to set the length of the substring.
https://github.com/onetrueawk/awk/pull/205

Revision 1.79 / (download) - annotate - [select for diffs], Fri Oct 6 22:29:24 2023 UTC (7 months, 1 week ago) by millert
Branch: MAIN
Changes since 1.78: +5 -2 lines
Diff to previous 1.78 (colored)

Update awk to Sep 24, 2023 version.

fnematch and getrune have been overhauled to solve issues around
unicode FS and RS. also fixed gsub null match issue with unicode.
big thanks to Arnold Robbins.

Revision 1.78 / (download) - annotate - [select for diffs], Wed Sep 20 16:49:13 2023 UTC (7 months, 4 weeks ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4
Changes since 1.77: +2 -2 lines
Diff to previous 1.77 (colored)

Use awk_mb_cur_max in nawk_convert() instead of MB_CUR_MAX.

Revision 1.77 / (download) - annotate - [select for diffs], Mon Sep 18 19:32:19 2023 UTC (8 months ago) by millert
Branch: MAIN
Changes since 1.76: +5 -5 lines
Diff to previous 1.76 (colored)

Disable utf-8 for non-multibyte locales, such as C or POSIX.

This makes it possible to get the old awk behavior (where chars are
bytes) by setting LC_CTYPE to C or POSIX.  OK schwarze@

Revision 1.76 / (download) - annotate - [select for diffs], Mon Sep 18 15:16:22 2023 UTC (8 months ago) by deraadt
Branch: MAIN
Changes since 1.75: +3 -3 lines
Diff to previous 1.75 (colored)

2 cases of c99 for-scope variable decl, when a variable already exists
in scope.  but a 3rd similar situation in the same scope exists also,
which does not create a new variable, and uses the upper scope variable.
Pretty sloppy stuff.
ok millert

Revision 1.75 / (download) - annotate - [select for diffs], Sun Sep 17 14:49:44 2023 UTC (8 months ago) by millert
Branch: MAIN
Changes since 1.74: +523 -37 lines
Diff to previous 1.74 (colored)

Update to the One True Awk, 2nd edition (Sep 12, 2023).

This corresponds to the 2nd edition of "The AWK Programming Language"
and adds support for UTF-8 and comma-separated value inputs.

Revision 1.74 / (download) - annotate - [select for diffs], Wed Sep 21 01:42:59 2022 UTC (19 months, 4 weeks ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.73: +4 -3 lines
Diff to previous 1.73 (colored)

Update awk to Sep 12, 2022 version.
Fix undefined behavior and a use-after-free in cat().

Revision 1.73 / (download) - annotate - [select for diffs], Thu Sep 1 15:21:28 2022 UTC (20 months, 2 weeks ago) by millert
Branch: MAIN
Changes since 1.72: +10 -6 lines
Diff to previous 1.72 (colored)

Update awk to Aug 30, 2022 version.
Various leaks and use-after-free issues plugged/fixed.

Revision 1.72 / (download) - annotate - [select for diffs], Fri Jun 3 19:40:56 2022 UTC (23 months, 2 weeks ago) by millert
Branch: MAIN
Changes since 1.71: +5 -6 lines
Diff to previous 1.71 (colored)

Fix a file management memory leak that appears to have been there
since the files array was first initialized with stdin, stdout, and
stderr (circa 1992).  From Miguel Pineiro Jr.

Revision 1.71 / (download) - annotate - [select for diffs], Thu Jan 27 16:58:37 2022 UTC (2 years, 3 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.70: +26 -13 lines
Diff to previous 1.70 (colored)

Update awk to Dec 8, 2021 version.
Fixes error handling in closefile() and closeall(). Long standing
warnings had been made fatal and some fatal errors went undetected.

Revision 1.70 / (download) - annotate - [select for diffs], Mon Nov 1 18:28:24 2021 UTC (2 years, 6 months ago) by millert
Branch: MAIN
Changes since 1.69: +9 -7 lines
Diff to previous 1.69 (colored)

awkgetline: do not access unitialized data on EOF
getrec() returns 0 on EOF and leaves the contents of buf unchanged.
From https://github.com/onetrueawk/awk/pull/134

Revision 1.69 / (download) - annotate - [select for diffs], Wed Dec 9 20:00:11 2020 UTC (3 years, 5 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.68: +50 -30 lines
Diff to previous 1.68 (colored)

Update awk to December 8, 2020 version.
Prevents strings beginning with "inf" or "nan" from being interpreted
as infinity or not-a-number respectively which still parsing "inf"
and "nan" (with or without a leading sign) correctly.

Revision 1.68 / (download) - annotate - [select for diffs], Fri Aug 28 16:29:16 2020 UTC (3 years, 8 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.67: +22 -2 lines
Diff to previous 1.67 (colored)

Implement mktime() function for compatibility with mawk and gawk.
This is the only missing time function compared to those two
implementations.  Doc changes OK jmc@

Revision 1.67 / (download) - annotate - [select for diffs], Tue Aug 11 16:57:05 2020 UTC (3 years, 9 months ago) by millert
Branch: MAIN
Changes since 1.66: +14 -8 lines
Diff to previous 1.66 (colored)

Update awk to August 7, 2020 version.

Revision 1.66 / (download) - annotate - [select for diffs], Thu Jul 30 17:45:44 2020 UTC (3 years, 9 months ago) by millert
Branch: MAIN
Changes since 1.65: +2 -2 lines
Diff to previous 1.65 (colored)

Update awk to July 30, 2020 version.

Revision 1.65 / (download) - annotate - [select for diffs], Mon Jul 20 18:57:19 2020 UTC (3 years, 9 months ago) by millert
Branch: MAIN
Changes since 1.64: +6 -2 lines
Diff to previous 1.64 (colored)

If closefile() is called on std{in,out,err}, freopen() /dev/null instead.
Otherwise, awk will continue trying to perform I/O on a closed stdio stream.
This appears to be consistent with how gawk behaves.  OK tim@

Revision 1.64 / (download) - annotate - [select for diffs], Mon Jul 20 18:55:15 2020 UTC (3 years, 9 months ago) by millert
Branch: MAIN
Changes since 1.63: +5 -1 lines
Diff to previous 1.63 (colored)

In closeall(), skip stdin and flush std{err,out} instead of closing.
Otherwise awk could fclose(stdin) twice (it may appear more than once)
and closing stderr means awk cannot report errors closing other streams.
OK tim@

Revision 1.63 / (download) - annotate - [select for diffs], Thu Jul 2 19:06:22 2020 UTC (3 years, 10 months ago) by millert
Branch: MAIN
Changes since 1.62: +14 -11 lines
Diff to previous 1.62 (colored)

Update awk to July 2, 2020 version.

Revision 1.62 / (download) - annotate - [select for diffs], Wed Jul 1 13:32:27 2020 UTC (3 years, 10 months ago) by millert
Branch: MAIN
Changes since 1.61: +3 -3 lines
Diff to previous 1.61 (colored)

Fix regression with changed SUBSEP in subscript in version 20191024.
The length of SUBSEP needs to be rechecked after calling execute(),
in case SUBSEP itself has been changed.  From tim@

Revision 1.61 / (download) - annotate - [select for diffs], Wed Jul 1 13:26:54 2020 UTC (3 years, 10 months ago) by millert
Branch: MAIN
Changes since 1.60: +4 -4 lines
Diff to previous 1.60 (colored)

Fix concatenation regression introduced in version 20201024.
Concatenation evaluated both sides of the expression before doing
its work, which, since assign() evaluates to the cell being assigned
to, meant that expressions like "print (a = 1) (a = 2)" would print
"22" rather than "12".  From Tim van der Molen

Revision 1.60 / (download) - annotate - [select for diffs], Fri Jun 26 15:57:39 2020 UTC (3 years, 10 months ago) by millert
Branch: MAIN
Changes since 1.59: +15 -15 lines
Diff to previous 1.59 (colored)

Update awk to June 25, 2020 version.

Revision 1.59 / (download) - annotate - [select for diffs], Sat Jun 13 01:21:01 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.58: +182 -3 lines
Diff to previous 1.58 (colored)

Integrate the bsd-features branch from awk github.
Implements the gensub(), systime() and strftime() functions for
greater gawk compatibility.

Revision 1.58 / (download) - annotate - [select for diffs], Sat Jun 13 01:19:55 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.57: +1 -8 lines
Diff to previous 1.57 (colored)

POSIX doesn't permit an unescaped '/' in an extended regular expression.
Unlike upstream awk, ours has historically allowed unescaped '/'
inside a bracket expression for compatibility with other awk
implementations but the check was too simple-minded.  This improves
the matching to allow things like /[]/]/, /[^]// and '/[abc[:digit:]/@#]/'
To enable strict POSIX compliance, set POSIXLY_CORRECT.

Revision 1.57 / (download) - annotate - [select for diffs], Wed Jun 10 21:05:50 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.56: +204 -145 lines
Diff to previous 1.56 (colored)

Update awk to Feb 28, 2020 version.

Revision 1.56 / (download) - annotate - [select for diffs], Wed Jun 10 21:05:02 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.55: +23 -9 lines
Diff to previous 1.55 (colored)

Update awk to Jan 31, 2020 version.

Revision 1.55 / (download) - annotate - [select for diffs], Wed Jun 10 21:04:40 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.54: +12 -14 lines
Diff to previous 1.54 (colored)

Update awk to Jan 5, 2020 version.

Revision 1.54 / (download) - annotate - [select for diffs], Wed Jun 10 21:03:56 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.53: +8 -8 lines
Diff to previous 1.53 (colored)

Update awk to Nov 10, 2019 version.

Revision 1.53 / (download) - annotate - [select for diffs], Wed Jun 10 21:03:36 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.52: +99 -107 lines
Diff to previous 1.52 (colored)

Update awk to Oct 24, 2019 version.

Revision 1.52 / (download) - annotate - [select for diffs], Wed Jun 10 21:03:12 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.51: +2 -2 lines
Diff to previous 1.51 (colored)

Update awk to Oct 17, 2019 version.

Revision 1.51 / (download) - annotate - [select for diffs], Wed Jun 10 21:02:33 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.50: +26 -23 lines
Diff to previous 1.50 (colored)

Update awk to Sep 10, 2019 version.

Revision 1.50 / (download) - annotate - [select for diffs], Wed Jun 10 21:02:19 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.49: +4 -1 lines
Diff to previous 1.49 (colored)

Update awk to Jun 17, 2019 version.

Revision 1.49 / (download) - annotate - [select for diffs], Wed Jun 10 21:01:32 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.48: +42 -29 lines
Diff to previous 1.48 (colored)

Update awk to Jan 25, 2019 version.

Revision 1.48 / (download) - annotate - [select for diffs], Wed Jun 10 21:00:31 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.47: +5 -6 lines
Diff to previous 1.47 (colored)

Update awk to Aug 27, 2018 version.
Disallow '$' in printf formats
Added some casts to silence warnings on debugging printfs.

Revision 1.47 / (download) - annotate - [select for diffs], Wed Jun 10 21:00:01 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.46: +47 -6 lines
Diff to previous 1.46 (colored)

Update awk to Aug 23, 2018 version.

Revision 1.46 / (download) - annotate - [select for diffs], Wed Jun 10 20:59:06 2020 UTC (3 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.45: +11 -11 lines
Diff to previous 1.45 (colored)

Update awk to Jan 5, 2013 version, no real code changes.

Revision 1.45 / (download) - annotate - [select for diffs], Mon Jun 8 03:22:23 2020 UTC (3 years, 11 months ago) by guenther
Branch: MAIN
Changes since 1.44: +11 -3 lines
Diff to previous 1.44 (colored)

The errcheck() function treats an errno of ERANGE or EDOM as something
to report, so make sure errno is set to zero before invoking a
function to check so that a previous such errno value won't result
in a false positive.  This could happen simply due to input line fields
that looked enough like floating-point input to trigger ERANGE.

Problem noted by Jordan Geoghegan (jordan (at) geoghegan.ca), with
clue from Ze' Loff (zeloff (at) zeloff.org)

ok millert@

Revision 1.44 / (download) - annotate - [select for diffs], Tue Aug 13 10:45:56 2019 UTC (4 years, 9 months ago) by fcambus
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored)

Check for strdup return value and exit on failure.

OK millert@

Revision 1.43 / (download) - annotate - [select for diffs], Tue Aug 13 10:41:33 2019 UTC (4 years, 9 months ago) by fcambus
Branch: MAIN
Changes since 1.42: +4 -3 lines
Diff to previous 1.42 (colored)

Fix a segmentation fault in awk, from upstream version 20121220.

OK millert@

Revision 1.42 / (download) - annotate - [select for diffs], Mon Oct 9 14:51:31 2017 UTC (6 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.41: +14 -14 lines
Diff to previous 1.41 (colored)

rename dprintf macro to DPRINTF to avoid collision with libc posix dprintf.
(amazing to me that the posix name was chosen though it specifically
collides with code Kernighan maintained since the V7).
ok millert

Revision 1.41 / (download) - annotate - [select for diffs], Fri Sep 15 14:19:56 2017 UTC (6 years, 8 months ago) by ajacoutot
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.40: +4 -4 lines
Diff to previous 1.40 (colored)

Fix bitwise operations error messages; from FreeBSD

ok deraadt@

Revision 1.40 / (download) - annotate - [select for diffs], Wed Dec 16 19:44:42 2015 UTC (8 years, 5 months ago) by tb
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1, OPENBSD_6_0_BASE, OPENBSD_6_0, OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

Remove modulo bias in random number generator.

Diff from Matthew Martin, rewieved by deraadt@ and me.

ok deraadt@, millert@

Revision 1.39 / (download) - annotate - [select for diffs], Sat Sep 5 22:07:10 2015 UTC (8 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.38: +8 -4 lines
Diff to previous 1.38 (colored)

When rand() was made fully random, the return value of srand() was
also affected incorrectly.  Noticed by Stephane Chazelas.  This reverts
the return value of srand() to the old (not very useful) behaviour.
This also allows toggling rand() to strong/weak based upon whether
srand() is called without/with an argument.
Long discussion and work with millert
ok beck

Revision 1.38 / (download) - annotate - [select for diffs], Fri Dec 19 19:28:55 2014 UTC (9 years, 5 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.37: +3 -3 lines
Diff to previous 1.37 (colored)

Use reallocarray() where suitable
ok millert doug

Revision 1.37 / (download) - annotate - [select for diffs], Mon Dec 8 21:50:09 2014 UTC (9 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.36: +4 -11 lines
Diff to previous 1.36 (colored)

Use srandom_deterministic() if a seed is supplied, thereby switching the
subsystem out of strong random mode.  No effective change from what we've
been doing for a while.  Result is it becomes 1 line of code.
ok millert

Revision 1.36 / (download) - annotate - [select for diffs], Mon Dec 1 03:18:50 2014 UTC (9 years, 5 months ago) by millert
Branch: MAIN
Changes since 1.35: +2 -2 lines
Diff to previous 1.35 (colored)

Fix %c for floating values that become 0 when coerced to int.
From Jeremy Devenport

Revision 1.35 / (download) - annotate - [select for diffs], Sat Oct 11 03:07:29 2014 UTC (9 years, 7 months ago) by doug
Branch: MAIN
Changes since 1.34: +2 -2 lines
Diff to previous 1.34 (colored)

Userland reallocarray() audit.

Avoid potential integer overflow in the size argument of malloc() and
realloc() by using reallocarray() to avoid unchecked multiplication.

ok deraadt@

Revision 1.34 / (download) - annotate - [select for diffs], Sun Sep 29 15:42:25 2013 UTC (10 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.33: +7 -7 lines
Diff to previous 1.33 (colored)

use a more clearly named variable for the srandom case in the code
ok millert

Revision 1.33 / (download) - annotate - [select for diffs], Wed Sep 28 19:27:18 2011 UTC (12 years, 7 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1
Changes since 1.32: +45 -20 lines
Diff to previous 1.32 (colored)

Update awk to Aug 10, 2011 version; naddy@ reports no ports problems
from the update.

Revision 1.32 / (download) - annotate - [select for diffs], Wed Apr 20 22:28:39 2011 UTC (13 years, 1 month ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.31: +5 -3 lines
Diff to previous 1.31 (colored)

Stash the old seed when srand() is called and use it as the return
value as per POSIX and the fine manual.  Fix sent upstream to bwk.
OK deraadt@

Revision 1.31 / (download) - annotate - [select for diffs], Sun Jun 13 17:58:19 2010 UTC (13 years, 11 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.30: +7 -6 lines
Diff to previous 1.30 (colored)

Update awk to May 23, 2010 version.  OK miod@

Revision 1.30 / (download) - annotate - [select for diffs], Mon Oct 6 20:38:33 2008 UTC (15 years, 7 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7, OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.29: +26 -24 lines
Diff to previous 1.29 (colored)

Update awk to version 20071023; OK deraadt@

Revision 1.29 / (download) - annotate - [select for diffs], Wed Jun 4 14:04:42 2008 UTC (15 years, 11 months ago) by pyr
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.28: +59 -1 lines
Diff to previous 1.28 (colored)

Extend awk with bitwise operations. This is an extension to the awk
spec and documented as such, but comes in handy from time to time.
The prototypes make it compatible with a similar GNU awk extension.

ok millert@, enthusiasm from deraadt@

Revision 1.28 / (download) - annotate - [select for diffs], Sun Apr 13 00:22:17 2008 UTC (16 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.27: +2 -2 lines
Diff to previous 1.27 (colored)

Use arc4random_buf() when requesting more than a single word of output

Use arc4random_uniform() when the desired random number upper bound
is not a power of two

ok deraadt@ millert@

Revision 1.27 / (download) - annotate - [select for diffs], Wed Feb 27 17:19:34 2008 UTC (16 years, 2 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3
Changes since 1.26: +3 -1 lines
Diff to previous 1.26 (colored)

fail nicely instead of crashing for format strings containing '*',
without a matching argument following
from Jukka Salmi

Revision 1.26 / (download) - annotate - [select for diffs], Thu Dec 30 02:08:35 2004 UTC (19 years, 4 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0, OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8, OPENBSD_3_7_BASE, OPENBSD_3_7
Changes since 1.25: +1 -5 lines
Diff to previous 1.25 (colored)

stdinit() and flush_all() are prototyped globally, no need to do it
inside functions that use them.

Revision 1.25 / (download) - annotate - [select for diffs], Thu Dec 30 01:52:48 2004 UTC (19 years, 4 months ago) by millert
Branch: MAIN
Changes since 1.24: +20 -6 lines
Diff to previous 1.24 (colored)

Update to version 20041222; OK deraadt@

Revision 1.24 / (download) - annotate - [select for diffs], Sat May 8 22:08:51 2004 UTC (20 years ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.23: +12 -7 lines
Diff to previous 1.23 (colored)

Use arc4random() unless the user specifies a specific seed, in which
case, call srandom() and use random().  Avoid using rand() because
it does not produce good random numbers.  Based on a diff from deraadt@

Revision 1.23 / (download) - annotate - [select for diffs], Wed Aug 6 21:08:07 2003 UTC (20 years, 9 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.22: +2 -2 lines
Diff to previous 1.22 (colored)

Remove some double semicolons (hmm, do two semis equal a maxi?).
I've skipped the GNU stuff for now.  From Patrick Latifi.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jul 2 21:04:09 2003 UTC (20 years, 10 months ago) by deraadt
Branch: MAIN
Changes since 1.21: +5 -1 lines
Diff to previous 1.21 (colored)

protos

Revision 1.21 / (download) - annotate - [select for diffs], Mon Apr 28 03:07:40 2003 UTC (21 years ago) by tedu
Branch: MAIN
Changes since 1.20: +16 -13 lines
Diff to previous 1.20 (colored)

string cleaning.  ok millert@ tdeval@

Revision 1.20 / (download) - annotate - [select for diffs], Sun Apr 6 06:12:01 2003 UTC (21 years, 1 month ago) by pvalchev
Branch: MAIN
Changes since 1.19: +7 -7 lines
Diff to previous 1.19 (colored)

more string business; millert ok and suggestion for strdup

Revision 1.19 / (download) - annotate - [select for diffs], Fri Apr 4 00:42:34 2003 UTC (21 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.18: +7 -7 lines
Diff to previous 1.18 (colored)

snprintf & strlcpy; tedu ok

Revision 1.18 / (download) - annotate - [select for diffs], Thu Dec 19 21:24:28 2002 UTC (21 years, 5 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_3_BASE, OPENBSD_3_3
Changes since 1.17: +52 -30 lines
Diff to previous 1.17 (colored)

Update to the One True Awk version 20021213

Revision 1.17 / (download) - annotate - [select for diffs], Sat Sep 8 00:12:40 2001 UTC (22 years, 8 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_2_BASE, OPENBSD_3_2, OPENBSD_3_1_BASE, OPENBSD_3_1, OPENBSD_3_0_BASE, OPENBSD_3_0
Changes since 1.16: +21 -13 lines
Diff to previous 1.16 (colored)

Update to latest version of the One True Awk.  See the FIXES file
for details.

Revision 1.16 / (download) - annotate - [select for diffs], Wed Dec 8 23:09:46 1999 UTC (24 years, 5 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_9, OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7
Changes since 1.15: +82 -72 lines
Diff to previous 1.15 (colored)

June 6, 1999 version of the "one true awk"
Most of the changes are to avoid using a static buffer for error messages.

Revision 1.15 / (download) - annotate - [select for diffs], Tue Apr 20 17:31:30 1999 UTC (25 years, 1 month ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_2_6_BASE, OPENBSD_2_6
Changes since 1.14: +77 -74 lines
Diff to previous 1.14 (colored)

April 16, 1999 version of the "one true awk"--64-bit fixes and more.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Apr 18 17:06:31 1999 UTC (25 years, 1 month ago) by millert
Branch: MAIN
Changes since 1.13: +14 -13 lines
Diff to previous 1.13 (colored)

March 5, 1999 version of the "one true awk"

Revision 1.13 / (download) - annotate - [select for diffs], Mon Aug 25 16:17:14 1997 UTC (26 years, 9 months ago) by kstailey
Branch: MAIN
CVS Tags: OPENBSD_2_5_BASE, OPENBSD_2_5, OPENBSD_2_4_BASE, OPENBSD_2_4, OPENBSD_2_3_BASE, OPENBSD_2_3, OPENBSD_2_2_BASE, OPENBSD_2_2
Changes since 1.12: +311 -228 lines
Diff to previous 1.12 (colored)

August 1997 version of "the one true awk"

Revision 1.12 / (download) - annotate - [select for diffs], Mon Apr 7 15:59:56 1997 UTC (27 years, 1 month ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_2_1_BASE, OPENBSD_2_1
Changes since 1.11: +23 -23 lines
Diff to previous 1.11 (colored)

Back out last changes for now.  They cause problems.

Revision 1.11 / (download) - annotate - [select for diffs], Sun Apr 6 06:31:51 1997 UTC (27 years, 1 month ago) by millert
Branch: MAIN
Changes since 1.10: +23 -23 lines
Diff to previous 1.10 (colored)

Use long, not int when casting pointers and storing as integers.
Now compiles on alpha w/o warnings.

Revision 1.10 / (download) - annotate - [select for diffs], Wed Jan 29 18:33:56 1997 UTC (27 years, 3 months ago) by kstailey
Branch: MAIN
Changes since 1.9: +4 -8 lines
Diff to previous 1.9 (colored)

calculate string length in format() more efficiently

Revision 1.9 / (download) - annotate - [select for diffs], Sat Jan 25 03:24:52 1997 UTC (27 years, 3 months ago) by kstailey
Branch: MAIN
Changes since 1.8: +20 -7 lines
Diff to previous 1.8 (colored)

reapplied 1.2 -> 1.3 changes to run.c plus many fixes

Revision 1.8 / (download) - annotate - [select for diffs], Sat Jan 25 00:24:31 1997 UTC (27 years, 3 months ago) by kstailey
Branch: MAIN
Changes since 1.7: +10 -21 lines
Diff to previous 1.7 (colored)

back out 1.2 again for testing

Revision 1.7 / (download) - annotate - [select for diffs], Fri Jan 24 23:43:10 1997 UTC (27 years, 3 months ago) by kstailey
Branch: MAIN
Changes since 1.6: +21 -10 lines
Diff to previous 1.6 (colored)

reapplied 1.2 -> 1.3 changes to run.c that got squashed

Revision 1.6 / (download) - annotate - [select for diffs], Fri Jan 24 23:11:32 1997 UTC (27 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.5: +10 -21 lines
Diff to previous 1.5 (colored)

Basically stock AT&T resarch awk until the awk vs. flex problems
have a better resolution.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Jan 21 23:57:37 1997 UTC (27 years, 4 months ago) by kstailey
Branch: MAIN
Changes since 1.4: +5 -3 lines
Diff to previous 1.4 (colored)

back out 1.4; I should know better than to do this after a big meal

Revision 1.4 / (download) - annotate - [select for diffs], Tue Jan 21 23:47:55 1997 UTC (27 years, 4 months ago) by kstailey
Branch: MAIN
Changes since 1.3: +3 -5 lines
Diff to previous 1.3 (colored)

optimization: kill two calls to strlen() in format()

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jan 21 21:14:06 1997 UTC (27 years, 4 months ago) by kstailey
Branch: MAIN
Changes since 1.2: +21 -10 lines
Diff to previous 1.2 (colored)

from the FIXES file:

Oct 20, 1988:
        Fixed %c:  if expr is numeric, use numeric value;
        otherwise print 1st char of string value.  still
        doesn't work if the value is 0 -- won't print \0.

This bugged me because it prevents awk from being a general-purpose
decimal to bytestream converter (also GNU awk gets this right.)

Look in /usr/share/man/cat4/sun3/leds.0 and you see:

           # echo 0 0 0 5 0 0 0 8 254 253 250 247 239 223 175 127 |
             awk '{ for (i=1;i<=NF;i++) printf("%c",$i+0); }' > /dev/leds

This used to fail since "0" did not produce a \0 on stdout.

It doesn't make any sense to me to fix awksprintf() the same way I did
awkprintf() since sticking a \0 in a string ends it.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Jan 20 19:43:23 1997 UTC (27 years, 4 months ago) by millert
Branch: MAIN
Changes since 1.1: +1 -72 lines
Diff to previous 1.1 (colored)

Latest research awk from June 29, 1996

Revision 1.1 / (download) - annotate - [select for diffs], Thu Jul 4 20:34:48 1996 UTC (27 years, 10 months ago) by tholo
Branch: MAIN
CVS Tags: OPENBSD_2_0_BASE, OPENBSD_2_0

AT&T awk, by B. W. Kernighan, with fixes from 4.4BSD and by me

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.