OpenBSD CVS

CVS log for src/usr.bin/head/head.c


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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.24 / (download) - annotate - [select for diffs], Mon Feb 7 17:19:57 2022 UTC (2 years, 3 months ago) by cheloha
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, HEAD
Changes since 1.23: +24 -11 lines
Diff to previous 1.23 (colored)

head(1): check for stdio errors

- Output errors are terminal.

- Input errors yield a warning and cause head(1) to fail
  gracefully.

Tweaked by millert@.

Thread: https://marc.info/?l=openbsd-tech&m=164419238123928&w=2

ok millert@

Revision 1.23 / (download) - annotate - [select for diffs], Sat Jan 29 00:19:04 2022 UTC (2 years, 3 months ago) by cheloha
Branch: MAIN
Changes since 1.22: +42 -30 lines
Diff to previous 1.22 (colored)

head(1): refactor main loop

The main loop here is horribly obfuscated.  In particular, the path
through the loop to exit(3) is very complex.

Refactor the open/read/write/close portions of the loop out of main()
into a separate function, head_file().

The result is a lot easier to understand at a glance.  In particular,
the path to the end of main() is now dead simple.

Thread: https://marc.info/?l=openbsd-tech&m=164325900400701&w=2

ok millert@

Revision 1.22 / (download) - annotate - [select for diffs], Sun Oct 10 15:57:25 2021 UTC (2 years, 7 months ago) by cheloha
Branch: MAIN
Changes since 1.21: +8 -12 lines
Diff to previous 1.21 (colored)

head(1): validate all line count arguments

We need to validate all line count option arguments, not just the last
such argument found.

While here, switch to the default strtonum(3) error message format:

	<argument-name> is <errstr>: <argument-string>

Thread: https://marc.info/?l=openbsd-tech&m=163383023212104&w=2

ok millert@

Revision 1.21 / (download) - annotate - [select for diffs], Sun Mar 20 17:14:51 2016 UTC (8 years, 2 months ago) by tb
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1, OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

whitespace: remove a space before a tab and a trailing tab.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Oct 9 01:37:07 2015 UTC (8 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.19: +5 -5 lines
Diff to previous 1.19 (colored)

Change all tame callers to namechange to pledge(2).

Revision 1.19 / (download) - annotate - [select for diffs], Wed Oct 7 06:55:10 2015 UTC (8 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.18: +6 -1 lines
Diff to previous 1.18 (colored)

tame "stdio rpath" initially.  if no files, go to tame "stdio".

Revision 1.18 / (download) - annotate - [select for diffs], Wed Oct 8 08:31:53 2014 UTC (9 years, 7 months ago) by schwarze
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.17: +7 -5 lines
Diff to previous 1.17 (colored)

Fix a 37 year old bug introduced by Bill Joy on August 24, 1977
that was already present in the 1BSD release on March 9, 1978
by merging Keith Bostic's 22 year old fix from 4.4BSD (not kidding).

Original CSRG SCCS commit message:

  ^As 00009/00006/00145
  ^Ad D 5.7 92/03/04 14:35:42 bostic 9 8
  ^Ac can't use freopen; example is "date | head file1 /dev/stdin"

ok deraadt@ tedu@, also checked by Martin <Natano dot net>

Revision 1.17 / (download) - annotate - [select for diffs], Tue Oct 7 19:38:57 2014 UTC (9 years, 7 months ago) by tedu
Branch: MAIN
Changes since 1.16: +4 -2 lines
Diff to previous 1.16 (colored)

fix a critical DDOS in head. use the correct exit code on failure.
reported by craig skinner.
ok deraadt schwarze

Revision 1.16 / (download) - annotate - [select for diffs], Tue Nov 26 13:21:17 2013 UTC (10 years, 5 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.15: +3 -2 lines
Diff to previous 1.15 (colored)

unsigned char casts for ctype
ok krw

Revision 1.15 / (download) - annotate - [select for diffs], Tue Oct 27 23:59:38 2009 UTC (14 years, 6 months ago) by deraadt
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, OPENBSD_5_0_BASE, OPENBSD_5_0, OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8, OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.14: +1 -9 lines
Diff to previous 1.14 (colored)

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable).  these days, people use source.  these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms

Revision 1.14 / (download) - annotate - [select for diffs], Wed Oct 31 16:29:50 2007 UTC (16 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4, OPENBSD_4_3_BASE, OPENBSD_4_3
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

sync usage() w/ synopsis; from Pierre Riteau
ok sobrado

Revision 1.13 / (download) - annotate - [select for diffs], Mon Oct 9 00:24:36 2006 UTC (17 years, 7 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1
Changes since 1.12: +8 -11 lines
Diff to previous 1.12 (colored)

pretty

Revision 1.12 / (download) - annotate - [select for diffs], Fri Oct 6 23:44:30 2006 UTC (17 years, 7 months ago) by ray
Branch: MAIN
Changes since 1.11: +10 -10 lines
Diff to previous 1.11 (colored)

Convert strtol to strtonum, eliminating errno misusage.

OK dhill@, jaredy@, and moritz@.

Revision 1.11 / (download) - annotate - [select for diffs], Tue Jun 10 22:20:47 2003 UTC (20 years, 11 months ago) by deraadt
Branch: MAIN
CVS Tags: 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, OPENBSD_3_6_BASE, OPENBSD_3_6, OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.10: +4 -6 lines
Diff to previous 1.10 (colored)

mostly ansi cleanup; pval ok

Revision 1.10 / (download) - annotate - [select for diffs], Tue Jun 3 02:56:09 2003 UTC (20 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.9: +3 -7 lines
Diff to previous 1.9 (colored)

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999.  Proofed by myself and Theo.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Mar 14 16:44:24 2002 UTC (22 years, 2 months ago) by mpech
Branch: MAIN
CVS Tags: OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2, OPENBSD_3_1_BASE, OPENBSD_3_1
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored)

kill more registers.

millert@ ok

Revision 1.8 / (download) - annotate - [select for diffs], Sat Feb 16 21:27:46 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.7: +3 -3 lines
Diff to previous 1.7 (colored)

Part one of userland __P removal.  Done with a simple regexp with some minor hand editing to make comments line up correctly.  Another pass is forthcoming that handles the cases that could not be done automatically.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Jul 4 06:31:25 2001 UTC (22 years, 10 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE, OPENBSD_3_0
Changes since 1.6: +3 -3 lines
Diff to previous 1.6 (colored)

cleanup; santana@openbsd.org.mx

Revision 1.6 / (download) - annotate - [select for diffs], Tue Nov 7 02:45:42 2000 UTC (23 years, 6 months ago) by kevlo
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_9
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored)

Add __P(). ok deraadt@

Revision 1.5 / (download) - annotate - [select for diffs], Fri Jul 23 13:56:18 1999 UTC (24 years, 10 months ago) by aaron
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7, OPENBSD_2_6_BASE, OPENBSD_2_6
Changes since 1.4: +5 -5 lines
Diff to previous 1.4 (colored)

- Make error msgs more consistent with other usr.bin/ utils.
- Use warn() instead of an fprintf().

Revision 1.4 / (download) - annotate - [select for diffs], Fri Jul 23 13:14:32 1999 UTC (24 years, 10 months ago) by aaron
Branch: MAIN
Changes since 1.3: +22 -13 lines
Diff to previous 1.3 (colored)

- Use strtol() instead of atoi() so head(1) will complain when given bad
  number specifications like: head -123foobar456. Also, check for ERANGE and
  abort if strtol() returned LONG_MAX or LONG_MIN.
- Don't exit() when encountering a filename in argv[] that can't be open;
  instead just continue.
- Don't keep decrementing `linecnt' if we've hit the end of the file.

millert@ ok

Revision 1.3 / (download) - annotate - [select for diffs], Wed Jan 15 23:42:33 1997 UTC (27 years, 4 months ago) by millert
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, OPENBSD_2_1_BASE, OPENBSD_2_1
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored)

getopt(3) returns -1 when out of args, not EOF, whee!

Revision 1.2 / (download) - annotate - [select for diffs], Wed Jun 26 05:34:15 1996 UTC (27 years, 10 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_0_BASE, OPENBSD_2_0
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored)

rcsid

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:45:23 1995 UTC (28 years, 7 months ago) by deraadt
CVS Tags: netbsd_1_1
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of NetBSD tree

Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:45:23 1995 UTC (28 years, 7 months ago) by deraadt
Branch: MAIN

Initial revision

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.