Commit Graph

84 Commits

Author SHA1 Message Date
lukem c4b7a9e794 bsd.own.mk: rename GCC_NO_* to CC_WNO_*
Rename compiler-warning-disable variables from
	GCC_NO_warning
to
	CC_WNO_warning
where warning is the full warning name as used by the compiler.

GCC_NO_IMPLICIT_FALLTHRU is CC_WNO_IMPLICIT_FALLTHROUGH

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
2023-06-03 09:09:01 +00:00
andvar 95f94af301 fix various typos in documentation, comments and sysctl device description.
mainly aion -> ation and inlude -> include.
2023-03-26 19:10:32 +00:00
mrg de11d87641 introduce some common variables for use in GCC warning disables:
GCC_NO_FORMAT_TRUNCATION    -Wno-format-truncation (GCC 7/8)
GCC_NO_STRINGOP_TRUNCATION  -Wno-stringop-truncation (GCC 8)
GCC_NO_STRINGOP_OVERFLOW    -Wno-stringop-overflow (GCC 8)
GCC_NO_CAST_FUNCTION_TYPE   -Wno-cast-function-type (GCC 8)

use these to turn off warnings for most GCC-8 complaints.  many
of these are false positives, most of the real bugs are already
commited, or are yet to come.


we plan to introduce versions of (some?) of these that use the
"-Wno-error=" form, which still displays the warnings but does
not make it an error, and all of the above will be re-considered
as either being "fix me" (warning still displayed) or "warning
is wrong."
2019-10-13 07:28:04 +00:00
martin 1ff701ef77 Adapt to ar_tha() changes in if_arp.h rev1.31. 2018-02-13 10:17:04 +00:00
roy fcede00eff Use RO_MSGFILTER. 2017-04-12 16:47:39 +00:00
abhinav 585f9e85b5 Add xref for ethers(5) and hosts(5).
Remove extra white space in the middle of a sentence.
Use more markup for AUTHORS section.

ok wiz@
2016-12-21 12:03:48 +00:00
ozaki-r 09973b35ac Separate nexthop caches from the routing table
By this change, nexthop caches (IP-MAC address pair) are not stored
in the routing table anymore. Instead nexthop caches are stored in
each network interface; we already have lltable/llentry data structure
for this purpose. This change also obsoletes the concept of cloning/cloned
routes. Cloned routes no longer exist while cloning routes still exist
with renamed to connected routes.

Noticeable changes are:
- Nexthop caches aren't listed in route show/netstat -r
  - sysctl(NET_RT_DUMP) doesn't return them
  - If RTF_LLDATA is specified, it returns nexthop caches
- Several definitions of routing flags and messages are removed
  - RTF_CLONING, RTF_XRESOLVE, RTF_LLINFO, RTF_CLONED and RTM_RESOLVE
- RTF_CONNECTED is added
  - It has the same value of RTF_CLONING for backward compatibility
- route's -xresolve, -[no]cloned and -llinfo options are removed
  - -[no]cloning remains because it seems there are users
  - -[no]connected is introduced and recommended
    to be used instead of -[no]cloning
- route show/netstat -r drops some flags
  - 'L' and 'c' are not seen anymore
  - 'C' now indicates a connected route
- Gateway value of a route of an interface address is now not
  a L2 address but "link#N" like a connected (cloning) route
- Proxy ARP: "arp -s ... pub" doesn't create a route

You can know details of behavior changes by seeing diffs under tests/.

Proposed on tech-net and tech-kern:
  http://mail-index.netbsd.org/tech-net/2016/03/11/msg005701.html
2016-04-04 07:37:07 +00:00
christos 6994331daa c99 initializers 2014-12-03 03:44:45 +00:00
joerg 9edf9a0457 Remove many HAVE_GCC || HAVE_PCC conditionals as the options also apply
to Clang. Add a few cases of HAVE_LLVM for -fno-strict-aliasing.
2012-08-10 12:10:27 +00:00
joerg 76d8a55bb7 static + __printflike + __dead 2011-08-30 20:25:18 +00:00
mrg 75e42fa7da remove most of the remaining HAVE_GCC tests that are always true in
the modern world.
2011-06-20 07:43:56 +00:00
lukem 09ae632551 Fix WARNS=4 issues (-Wshadow -Wsign-compare -Wextra) 2009-04-18 08:50:23 +00:00
joerg afe5a26320 Fix preamble 2009-03-11 13:59:33 +00:00
gmcgarry 3c9a95916d Wrap compiler-specific flags with HAVE_GCC and HAVE_PCC as necessary. Add a few flags for PCC. 2008-08-29 00:02:21 +00:00
lukem 9c1945664c Remove the \n and tabs from the __COPYRIGHT() strings.
Tweak to use a consistent format.
2008-07-21 13:36:57 +00:00
martin a2e6cc1ff2 UBC license does not require an advertizing clause any more - this files
where probably missed in the initial sweep due to strange formatting
(last clause not explicitly numbered).

FreeBSD converted them (rev. 1.21 pf rarpd.8 and rev 1.41 of rarpd.c
in their repository), nearly four years ago.
2008-07-21 12:30:33 +00:00
tls 4147a3c54a Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry.  RedHat has
evidently built all "core system packages" with this option for some time.

This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.

This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros.  Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.

Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default.  Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.
2007-05-28 12:06:17 +00:00
mrg 126f7e1139 since ar_tha() can return NULL, don't pass it directly to functions
that expect real addresses.  explicitly KASSERT() that it is not
NULL in the kernel and just avoid using it userland.

(the kernel could be more defensive about this, but, until now it
would have just crashed anyway.)
2006-05-12 01:20:33 +00:00
mrg aadd7d4847 sprinkle some -fno-strict-aliasing and -Wno-pointer-sign with GCC4. 2006-05-11 23:16:28 +00:00
christos 5b59015f94 remove backwards compatibility with non-cloning bpf. 2004-12-01 23:12:11 +00:00
christos e13c309dd3 Use /dev/bpf, if _PATH_BPF is defined. 2004-12-01 23:04:58 +00:00
jrf 190b2e4c51 Replaced strncpy with strlcpy. Thanks to Peter Postma who
pointed them our in PR #25762. Approved by christos@NetBSD.org.
2004-09-07 13:20:39 +00:00
tron b174c24825 Fix handling of interface aliases if "rarpd" is not invoked with "-a". 2004-05-12 16:48:44 +00:00
darrenr 221fa57241 With recent changes to BPF, pushing the default buffer size to 1MB, running
a bunch of small daemons that seem small packet flows can easily chew up
significant kernel memory (each BPF device opened takes 2*buffersize of
wired memory.)  In each of these applications, add code to set the buffer
size to 32k before setting the interface.
2004-04-10 17:53:05 +00:00
agc 326b2259b7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22366, verified by myself.
2003-08-07 11:25:11 +00:00
itojun e8f0e61fd7 use bounded string op 2003-07-13 12:29:20 +00:00
itojun d25769c013 assume presense of getifaddrs(3). 2003-05-15 14:50:02 +00:00
petrov cc92472571 Fix alignment for socket addresses in routing socket requests for
LP64 machines. Addresses port-alpha/11089. Reviewed by thorpej.
2003-04-08 04:04:01 +00:00
grant 70e6e04099 Fix date typo, Oct 27 -> 17.
While it would be nice to be able to add features ahead of time,
it is not possible yet :)
2002-10-21 13:55:11 +00:00
lukem 307f4019a4 tweak usage now that multiple interfaces are supported... 2002-10-21 01:33:02 +00:00
thorpej 2c07094b2a Allow more than one interface to be specified on the command line. 2002-10-17 19:13:50 +00:00
wiz 84dd8f31fd ANSIfy. Remove ifndef __STDC__. Remove __P(). Remove register. 2002-07-14 00:58:30 +00:00
wiz 46f735035c Drop a comma. 2002-02-02 01:40:02 +00:00
wiz a2d753e3ef Whitespace nits. 2002-01-19 11:44:57 +00:00
itojun dad921a24e daemon(3) has to be called prior to file descriptor initialization. 2002-01-11 05:33:22 +00:00
wiz 4c99916337 va_{start,end} audit:
Make sure that each va_start has one and only one matching va_end,
especially in error cases.
If the va_list is used multiple times, do multiple va_starts/va_ends.
If a function gets va_list as argument, don't let it use va_end (since
it's the callers responsibility).

Improved by comments from enami and christos -- thanks!

Heimdal/krb4/KAME changes already fed back, rest to follow.

Inspired by, but not not based on, OpenBSD.
2001-09-24 13:22:25 +00:00
enami 5e2a856773 Kill no longer used variable decl. 2001-01-11 13:06:28 +00:00
lukem 13220245b2 use explicit name rather than __progname in openlog 2001-01-11 01:43:25 +00:00
is b002f5435b With RARP, MAC asks, and IP answers. Fixes PR 11330 by Thilo Manske, who
also provided the fix (modulo formatting).
2000-11-20 14:59:30 +00:00
is d8302e2d73 More format string cleanups by sommerfeld. 2000-10-11 20:23:46 +00:00
abs 7a26b9af55 Include the fact we're making replies in the debug() output. 2000-08-30 11:01:43 +00:00
itojun b9c3c448e1 use getifaddrs to avoid alignment constraints in SIOCGIFCONF.
(do you have PR # for this? >lukem)
2000-04-13 09:12:16 +00:00
abs 7d14d66b4d We need to close and open the socket to prevent routing updates building
up such that when we send our message we never see our reply (and hang)
Fix taken (modified) from PR 7508
2000-02-11 11:27:20 +00:00
abs 6068331e78 Indicate on which interface a packet has been received when debugging 2000-02-11 11:25:23 +00:00
nathanw 713f906d1c Copy struct ifreq returned by SIOGIFCONF to ensure correct alignment. 2000-02-07 01:15:52 +00:00
kleink 3e833f70b4 Need <sys/param.h> for MAXHOSTNAMELEN. 1999-09-26 10:40:32 +00:00
thorpej 56c5efa335 Use pidfile(3). 1999-06-06 02:52:16 +00:00
thorpej db3ee29b72 Fix a logic error which would have caused a NULL pointer dereference
if the client's IP address wasn't found on the interface's network.
1999-02-13 19:58:29 +00:00
kleink 3ed4fcf61e In userland, pull in <errno.h> instead of <sys/errno.h> for the declaration
of errno.
1999-01-11 22:39:59 +00:00
fvdl 778592d8c3 Shut up gcc. 1998-10-06 15:50:30 +00:00