summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-25Do the multiprotocol check first for the IPv4 case. So it is the sameClaudio Jeker
everywhere. OK benno@
2021-06-25fix decoding of X.509 subject name; from Leif Thuresson via bz3327Damien Miller
ok markus@
2021-06-25Use better language to refer to the user. From l1ving via githubDarren Tucker
PR#250, ok jmc@
2021-06-25sync set sizes with latest snapshotJonathan Gray
initial sizes were from arm64
2021-06-25sync set sizes with latest snapshotJonathan Gray
initial sizes were from arm64
2021-06-25Replace SIGCHLD/notify_pipe kludge with pselect.Darren Tucker
Previously sshd's SIGCHLD handler would wake up select() by writing a byte to notify_pipe. We can remove this by blocking SIGCHLD, checking for child terminations then passing the original signal mask through to pselect. This ensures that the pselect will immediately wake up if a child terminates between wait()ing on them and the pselect. In -portable, for platforms that do not have pselect the kludge is still there but is hidden behind a pselect interface. Based on other changes for bz#2158, ok djm@
2021-06-25minimalistic diff to use %ld instead of %d for ptrdiff printingTheo de Raadt
2021-06-25Pull in support from a future clang for __GCC_HAVE_SYNC_COMPARE_AND_SWAP_xTheo de Raadt
defines because we need it now from https://reviews.llvm.org/D91784 ok mlarkin kettenis
2021-06-24alarm(3): remove superfluous pointercheloha
The pointer `itp' doesn't serve any purpose here, remove it. Since we're changing these lines, we may as well rename `it' to `itv' to match the existing `oitv'. Thread: https://marc.info/?l=openbsd-tech&m=162380665115598&w=2 ok millert@
2020-08-03Import LLVM 10.0.0 release including clang, lld and lldb.Patrick Wildt
ok hackroom tested by plenty
2011-04-24Here comes the easter bunnytils 2.17 (the last version released against aMiod Vallat
licence mere mortals can understand the terms of); will be connected to the build on an arch-by-arch basis. Testsuites and generated files have been intentionnaly omitted from this import. Peer pressure and ok from at least drahn@ pirofti@ deraadt@
2021-06-24trim usage to match the man page;Jason McIntyre
remove -DSEEALSO, as suggested by millert ok millert
2021-06-24Add Buttonville and Peterborough (ON), both I've flown into.Ian Darwin
2021-06-24Update the name of RNO (name changed in 1994), also add:Mike Larkin
MEV - Minden-Tahoe airport, Minden, Nevada, USA CXP - Carson airport, Carson City, Nevada, USA TKF - Truckee Tahoe airport, California, USA I have landed at all three.
2021-06-24add some aarch64 bits missed in Makefile.in 1.6Jonathan Gray
ok deraadt@ drahn@
2021-06-24Simplify the multiprotocol handling by moving the while loops out of theClaudio Jeker
switch statement. This way common code is referenced only once. OK sthen@
2021-06-24aspath_deflate() did free the passed in data but since the way aspathsClaudio Jeker
are processed in the Adj-RIB-Out this is no longer needed since the passed in pointer is still referenced and is not allowed to be freed. Adjust the mrt code similar to how up_generate_attr() uses aspath_deflate(). OK sthen@
2021-06-24Add support for the 64-bit prefetchable memory window.Mark Kettenis
ok patrick@
2021-06-24Fix add-path capability encoding, the length was not correctly calculatedClaudio Jeker
because it included two extra bytes (copy-paste error from graceful restart).
2021-06-24unveil: cleanup code. no intented functional change.Sebastien Marie
return early for simple conditions instead of using navigating inside if-branches. with and ok claudio@
2021-06-24repair missing dependencies against bfd.h for riscv64Theo de Raadt
ok jsg drahn
2021-06-23syncTheo de Raadt
2021-06-23Adjust test. You're not supposed to change errno in a signal handler andMark Kettenis
count on it being observable in the normal program flow after the signal handler returns. Such code would break code that sets errno to 0 and looks at its value later. With the recent futex(2) changes this particular aspect of the test no longer passed. ok deraadt@, bluhm@
2021-06-23The first page of the I/O virtual address space is reserved so thatPatrick Wildt
is easier to spot misconfiguration or wrong behaviour where NULL is used as address. Right now that page is not part of the IOVA at all, so when we reserve regions, like PCI I/O space, which can cover that page as well, extent(9) will panic. Instead, include it in the IOVA but reserve it right away. This way that page can be reserved twice.
2021-06-23help the debugger look in ports for external parts like PadWalkerMarc Espie
and Readline. feedback and okay afresh1@
2021-06-23rtsock: revert from timeout_set_flags(9) to timeout_set_proc(9); ok mvs@cheloha
2021-06-23titmp(4)Mark Kettenis
2021-06-23Enable titmp(4).Mark Kettenis
ok deraadt@
2021-06-23Add titmp(4), a driver for the TI TMP451 temperature sensor.Mark Kettenis
ok deraadt@
2021-06-23adb(4/macppc): fix adb_cuda_tickle() prototypecheloha
Timeout callback functions are of type void (*)(void *). adb_cuda_tickle() needs a void pointer for a first parameter. ok mpi@
2021-06-23In unveil_add_vnode() refactor code around the indexes i and j. In oneClaudio Jeker
place the wrong index is used resulting in re-evaluating all unveil nodes. Also loop over over all but the last (just added vnode) -- again there is no need to re-evaluate the cover of the just added unveil. OK anton@ semarie@
2021-06-23Make sure the bus is idle before starting a transfer.Mark Kettenis
ok deraadt@
2021-06-23The value of -l should be treated as a 512-byte block count.Kenneth R Westerback
Tweak man page.
2021-06-23Use print_host() to log destination, netmask and gateway. Add prettytobhe
printing for route flags. ok markus@
2021-06-23Factor out vroute_addr().tobhe
ok markus@
2021-06-23btrace(8): init and update timespec for BEGIN/END eventdv
BEGIN and END use a fake dt(4) event, so in order to use the nsecs var or time() it needs a timespec set. Init for BEGIN and update at END. ok mpi@
2021-06-23Garbage collect prototoype for ssl_parse_serverhello_tlsext() whichTheo Buehler
was removed in t1_lib.c r1.141.
2021-06-23augment the global pf state list with its own locks.David Gwynne
before this, things that iterated over the global list of pf states had to take the net, pf, or pf state locks. in particular, the ioctls that dump the state table took the net and pf state locks before iterating over the states and using copyout to export them to userland. when we tried replacing the use rwlocks with mutexes under the pf locks, this blew up because you can't sleep when holding a mutex and there's a sleeping lock used inside copyout. this diff introduces two locks around the global state list: a mutex that protects the head and tail of the list, and an rwlock that protects the links between elements in the list. inserts on the state list only occur during packet handling and can be done by taking the mutex and putting the state on the tail before releasing the mutex. iterating over states is only done from thread/process contexts, so we can take a read lock, then the mutex to get a snapshot of the head and tail pointers, and then keep the read lock to iterate between the head and tail points. because it's a read lock we can then take other sleeping locks (eg, the one inside copyout) without (further) gymnastics. the pf state purge code takes the rwlock exclusively and the mutex to remove elements from the list. this allows the ioctls and purge code to loop over the list concurrently and largely without blocking the creation of states when pf is processing packets. pfsync also iterates over the state list when doing bulk sends, which the state purge code needs to be careful around. ok sashan@
2021-06-23pf_purge_expired_states can check the time once instead of for every state.David Gwynne
2021-06-23pfsync_undefer_notify needs to be careful before dereferecing state keys.David Gwynne
pfsync_undefer_notify uses the state keys to look up the address family, which is used to figure out if it should call ipv4 or ipv6 functions. however, the pf state purge code can unlink a state from the trees (ie, the state keys get removed) while the pfsync defer code is holding a reference to it and expects to be able to send the deferred packet in the future. we can test if the state keys are set by checking if the timeout state is PFTM_UNLINK or not. this currently relies on both pf_remove_state and pfsync_undefer_notify being called with the NET_LOCK held. this probably needs to be rethought later but is good enough for now. found the hard way on a production firewall at work.
2021-06-23rework pf_state_expires to avoid confusion around state->timeout.David Gwynne
im going to make it so pf_purge_expired_states() can gather states largely without sharing a lock with pfsync or actual packet processing in pf. if pf or pfsync unlink a state while pf_purge_expired_states is looking at it, we can race with some checks and fall over a KASSERT. i'm fixing this by having the caller of pf_state_expires read state->timeout first, do it's checks, and then pass the value as an argument into pf_state_expires. this means there's a consistent view of the state->timeout variable across all the checks that pf_purge_expired_states in particular does. if pf/pfsync does change the timeout while pf_purge_expired_states is looking at it, the worst thing that happens is that it doesn't get picked as a candidate for purging in this pass and will have to wait for the next sweep. ok sashan@ as part of a bigger diff
2021-06-23substantially shorten the usage() messageTheo de Raadt
pieces by jmc, pieces by me
2021-06-22reduce verbosity in usage and make it match SYNOPSIS;Jason McIntyre
i reformatted it to match 80w, and removed two functions that had been used to populate usage: getdistoptlist and msgprusage; ok millert
2021-06-22reduce verbosity in usage and make it match SYNOPSIS;Jason McIntyre
ok millert
2021-06-22reduce verbosity in usage and make it match SYNOPSIS;Jason McIntyre
ok millert
2021-06-22reduce verbosity in usage and make it match SYNOPSIS;Jason McIntyre
ok millert
2021-06-22zap wonky commas;Jason McIntyre
2021-06-22Reduce verbosity in tset/reset usage()Theo Buehler
from jmc, ok kn
2021-06-22Hoist initialization of _nc_progname to start of main()Theo Buehler
This way early calls to err(), failed() and usage() show "reset" instead of "tset" if the program was invoked as reset(1). Issue noted by jmc ok kn
2021-06-22Clarify tls_config_set_*_file() file I/O semanticskn
tls_config_set_*_file(3) do not just set the file paths like tls_config_set_*_path(3) do, they do load the given file(s) into memory directly using tls_config_load_file(). This distinction is important because it means a later tls_connect(3) will not do any file I/O (at least wrt. those files), which is relevant when for example pleding without "[rwc]path" after loading files into memory and before doing tls_connect(3). The manual's current wording made me use the following due to above way of pledging a program: tls_load_file() tls_config_set_ca_mem() tls_unload_file() While in fact a single tls_config_set_ca_file() call does the same. tls_config.c r1.26 (Aug 2016) change the code but forgot to amend the manual as noted by tb, thanks. Feedback OK tb