deraadt [Mon, 21 Apr 2014 11:18:34 +0000 (11:18 +0000)]
Replace entire printf-like guts with calls to libc snprintf.
funopen(3) is used to interface to BIO descriptors.
ok guenther
deraadt [Mon, 21 Apr 2014 11:12:49 +0000 (11:12 +0000)]
Bring malloc/calloc/realloc sequences to modern standard
ok guenther
henning [Mon, 21 Apr 2014 11:10:54 +0000 (11:10 +0000)]
we'll do fine without casting NULL to struct foo * / void *
ok gcc & md5 (alas, no binary change)
henning [Mon, 21 Apr 2014 10:07:58 +0000 (10:07 +0000)]
remove a define in an #ifdef notyet - "not yet" for 19 years gotta be
enough.
remove a define in an #ifdef notdef /* obsolete */ - 14 years are enough
henning [Mon, 21 Apr 2014 10:05:27 +0000 (10:05 +0000)]
annotate all #endifs to make clear what #if(def) they end
henning [Mon, 21 Apr 2014 09:57:27 +0000 (09:57 +0000)]
cosmetic changes regarding #ifdef to make things more obvious, ok reyk
claudio [Mon, 21 Apr 2014 09:48:31 +0000 (09:48 +0000)]
Now that we properly negotiate the session params we can enable sending
of immediate data for write commands. This gives a nice 20% performance
boost on writes compared to the solicited data transaction we did before.
deraadt [Mon, 21 Apr 2014 09:23:41 +0000 (09:23 +0000)]
remove macros wrapping malloc/calloc/free/realloc
guenther [Mon, 21 Apr 2014 09:22:15 +0000 (09:22 +0000)]
While we don't recommend using ext2fs, the directions for doing so
shouldn't be misleading
ok krw@
deraadt [Mon, 21 Apr 2014 09:00:56 +0000 (09:00 +0000)]
sync
guenther [Mon, 21 Apr 2014 08:46:59 +0000 (08:46 +0000)]
Correctly document the return value of getenv(3)
From Ben Cornett (ben (at) lantern.is)
ajacoutot [Mon, 21 Apr 2014 08:42:01 +0000 (08:42 +0000)]
Bye bye *hosts.equiv.
ok deraadt@
jsing [Mon, 21 Apr 2014 08:41:26 +0000 (08:41 +0000)]
KNF.
krw [Mon, 21 Apr 2014 08:19:38 +0000 (08:19 +0000)]
Don't leak mountpoint info. Now with replacement for silly realloc() dance
that appears to fix mysterious crashes seen with previous version that
tried to sneak in to 5.5.
ok otto@
jmatthew [Mon, 21 Apr 2014 04:17:07 +0000 (04:17 +0000)]
In qla_get_port_name_list, handle malloc failure, skip special fabric ports,
and set location on ports as best we can. Take the port mutex too.
dlg [Mon, 21 Apr 2014 04:02:52 +0000 (04:02 +0000)]
th_code is in network byte order
tedu [Mon, 21 Apr 2014 02:44:28 +0000 (02:44 +0000)]
clean up files we don't need
beck [Mon, 21 Apr 2014 00:52:00 +0000 (00:52 +0000)]
fix accidentally deleted deref.
beck [Sun, 20 Apr 2014 23:30:12 +0000 (23:30 +0000)]
ASN1_STRING cleanup - realloc has handled NULL since I had a mullet
and parachute pants - and since it's obvious there is no guarantee
the caller doesn't pass in the data area in the argument, use memmove
instead of memcpy so overlapping areas are handled correctly.
Also, pointers can be usefully printed in hex with %p, in error messaeges
rather than the bizzaro stuff that was there using mystical buffer lengths
and abuse of strlcpy-converted-blindly-from-strcpy
jmc [Sun, 20 Apr 2014 22:52:26 +0000 (22:52 +0000)]
tweak previous;
ajacoutot [Sun, 20 Apr 2014 22:35:10 +0000 (22:35 +0000)]
Prevent lpd(8) from looking into hosts.equiv.
Access control is now done only using hosts.lpd.
See lpd(8) for more information about the format of this file.
"seems reasonable" tedu@
"looks good" deraadt@
ok sthen@
beck [Sun, 20 Apr 2014 22:32:58 +0000 (22:32 +0000)]
replace a bunch of pointer-arithmatic-strcpy-converted-blindly-to-strlcpy
cruft with an snprintf.
"better than what was there" ok guenther@
guenther [Sun, 20 Apr 2014 22:31:55 +0000 (22:31 +0000)]
Eliminate duplicated logic by switching from malloc+snprintf to asprintf
ok beck@
claudio [Sun, 20 Apr 2014 22:22:18 +0000 (22:22 +0000)]
Add iscsictl bits to show the vscsi stats.
claudio [Sun, 20 Apr 2014 22:18:04 +0000 (22:18 +0000)]
Introduce some basic stats for the vscsi layer. Just counting the commands
and the bytes we push through vscsi(4).
ajacoutot [Sun, 20 Apr 2014 22:15:49 +0000 (22:15 +0000)]
check_hosts_equiv -> check_hosts_lpd
i.e. don't check for hosts.equiv anymore.
input/ok schwarze@, ok sthen@
schwarze [Sun, 20 Apr 2014 22:03:40 +0000 (22:03 +0000)]
in debug messages, truncating strings of excessive lengths is actually
a good thing, so cast the return value from sprintf to (void);
this concludes the mandoc sprintf audit
krw [Sun, 20 Apr 2014 21:25:07 +0000 (21:25 +0000)]
Make -L even more useful to monitoring processes. Truncate and
refill the file rather than creating a new one, which preserves
an fd being monitored. And truncate file on losing link.
Things like sysutils/ertn should now be able to see new leases, lease
renewals and cable unplugs.
tweaks by and ok sthen@
schwarze [Sun, 20 Apr 2014 20:48:34 +0000 (20:48 +0000)]
strlen+malloc+snprintf is error prone;
rewrite post_lb() to use asprintf(3) instead
stsp [Sun, 20 Apr 2014 20:35:07 +0000 (20:35 +0000)]
regen
stsp [Sun, 20 Apr 2014 20:34:57 +0000 (20:34 +0000)]
Add device ID for Ralink (now branded Mediatek) MT7601 USB wifi device
schwarze [Sun, 20 Apr 2014 20:17:36 +0000 (20:17 +0000)]
fix unchecked snprintf(3) in page header printing:
the length of the title is unknown, and speed doesn't matter here,
so use asprintf/free rather than a static buffer
guenther [Sun, 20 Apr 2014 20:14:09 +0000 (20:14 +0000)]
Chop off more SSLv2 tentacles and start fixing and noting y2038 issues.
APIs that pass times as longs will have to change at some point...
Bump major on both libcrypto and libssl.
ok tedu@
claudio [Sun, 20 Apr 2014 20:12:31 +0000 (20:12 +0000)]
After doing all of the loging dance to get the target's params it makes
sense to merge them into the active set. At least that way we run with
the right params and finally do reads and writes that are > 8k.
guenther [Sun, 20 Apr 2014 20:06:19 +0000 (20:06 +0000)]
Restore beck's (void)snprintf(): they were reviewed.
guenther [Sun, 20 Apr 2014 19:56:25 +0000 (19:56 +0000)]
Restore beck's rev 1.8: snprintf() was reviewed.
guenther [Sun, 20 Apr 2014 19:55:09 +0000 (19:55 +0000)]
Restore tedu's rev 1.4: snprintf() was reviewed.
guenther [Sun, 20 Apr 2014 19:52:41 +0000 (19:52 +0000)]
Restore beck's rev 1.7: snprintf() was reviewed.
Also, use sizeof() for snprintf()'s size argument
schwarze [Sun, 20 Apr 2014 19:39:35 +0000 (19:39 +0000)]
make sure static buffers for snprintf(3) are large enough
and cast snprintf return value to (void) where they are
afresh1 [Sun, 20 Apr 2014 19:23:08 +0000 (19:23 +0000)]
Remove unused/never installed libssl tools and docs and references to them
Sure deraadt
guenther [Sun, 20 Apr 2014 18:53:37 +0000 (18:53 +0000)]
Restore beck's rev 1.21: snprintf() was reviewed
claudio [Sun, 20 Apr 2014 18:17:12 +0000 (18:17 +0000)]
Use only one style for "return foo;"
reyk [Sun, 20 Apr 2014 18:16:11 +0000 (18:16 +0000)]
Add a few more overflow checks for strlc* functions in parse.y
tedu [Sun, 20 Apr 2014 18:11:45 +0000 (18:11 +0000)]
clarify a bit about hosts.lpd
tedu [Sun, 20 Apr 2014 18:06:37 +0000 (18:06 +0000)]
hosts.equiv is a ghost from bsd past
tedu [Sun, 20 Apr 2014 17:50:12 +0000 (17:50 +0000)]
theo found a file we don't seem to need, but just in case, i will paste
the contents below:
#!/usr/local/bin/perl
# x86 assember
zhuk [Sun, 20 Apr 2014 17:34:26 +0000 (17:34 +0000)]
Style improvement based on espie@'s feedback: provide and use
LT::UList->new() instead of calling tie() manually. As a bonus, few
extra lines in actual code go away.
okay espie@ who still thinks that I test things _before_ commit
guenther [Sun, 20 Apr 2014 17:01:35 +0000 (17:01 +0000)]
Restore beck's rev 1.9: snprintf() was reviewed
claudio [Sun, 20 Apr 2014 16:52:11 +0000 (16:52 +0000)]
Move session params initialization to when we start a session and not
when it is created. That way the config params from the config file have
a chance to stick.
claudio [Sun, 20 Apr 2014 16:49:56 +0000 (16:49 +0000)]
Fix conn_gen_kvp and its caller to fill the kvp array properly (including
the NULL terminator at the end). Now iscsid does proper LoginOperational
negotiation (which will bump the MaxRecvDataSegmentLength to 64k)
naddy [Sun, 20 Apr 2014 16:48:22 +0000 (16:48 +0000)]
move in6_cksum_phdr from in6.h to ip6_output.c to mirror in_cksum_phdr
ok henning@
schwarze [Sun, 20 Apr 2014 16:44:44 +0000 (16:44 +0000)]
KNF: case (FOO): -> case FOO, remove /* LINTED */ and /* ARGSUSED */,
remove trailing whitespace and blanks before tabs, improve some indenting;
no functional change
jsing [Sun, 20 Apr 2014 16:24:15 +0000 (16:24 +0000)]
KNF.
reyk [Sun, 20 Apr 2014 16:23:33 +0000 (16:23 +0000)]
Check another strlcpy overflow that is very unlikely to happen.
reyk [Sun, 20 Apr 2014 16:18:32 +0000 (16:18 +0000)]
Check for strlcpy overflow when expanding the HTTP input value.
guenther [Sun, 20 Apr 2014 16:18:06 +0000 (16:18 +0000)]
Restore beck's rev 1.3: snprintf() was reviewed
jsing [Sun, 20 Apr 2014 16:15:01 +0000 (16:15 +0000)]
More KNF.
reyk [Sun, 20 Apr 2014 16:13:36 +0000 (16:13 +0000)]
Check strlcpy of the script path names for overflow and use the size of the
destination buffer instead of the source buffer as the argument.
jsing [Sun, 20 Apr 2014 16:10:10 +0000 (16:10 +0000)]
KNF.
reyk [Sun, 20 Apr 2014 16:07:10 +0000 (16:07 +0000)]
Just to be pedantic, fail if strlcpy managed to overflow the socket path.
rpe [Sun, 20 Apr 2014 15:53:57 +0000 (15:53 +0000)]
Only issue a single dhcp requests per interface with the host-name
option set. Remove the second request, which does not provide the
host-name option. The client supplied hostname is used in certain
setups by DHCP servers to update DNS records on behalf of clients
and ensures that the hostname information is in the lease db.
discussed with deraadt
ok krw@ halex@
jsing [Sun, 20 Apr 2014 15:36:20 +0000 (15:36 +0000)]
KNF.
henning [Sun, 20 Apr 2014 15:29:52 +0000 (15:29 +0000)]
factor our ether_addheader for readability; there's more to come there
ok claudio reyk
jsing [Sun, 20 Apr 2014 15:06:11 +0000 (15:06 +0000)]
KNF.
henning [Sun, 20 Apr 2014 14:54:39 +0000 (14:54 +0000)]
ether_output: instead of assembling the ethernet header and then calling
carp_rewrite_lladdr to overwrite the src lladdr, get the intended src
lladdr before assembling the ethernet header.
carp_rewrite_lladdr -> carp_get_srclladdr
ok reyk claudio
henning [Sun, 20 Apr 2014 14:51:50 +0000 (14:51 +0000)]
ether_output: instead of using an esrc buffer in which we copy the intended
src lladdr just to copy it from the esrc buffer into the ethernet header
a few lines later, use an esrc pointer to figure out where to copy the
src lladdr from. ok claudio reyk
reyk [Sun, 20 Apr 2014 14:48:29 +0000 (14:48 +0000)]
Reimplement the multi-dimensional arrays that are used to set up the
process to process imsg communication. It became a maze after we
added support for multiple relay processes and even worse with the ca
processes. This change makes it easier to understand. Now it only
opens socketpairs that are needed - the code previously wasted lots of
fds.
ok blambert@
jsing [Sun, 20 Apr 2014 14:32:19 +0000 (14:32 +0000)]
More KNF.
jsing [Sun, 20 Apr 2014 14:24:11 +0000 (14:24 +0000)]
More KNF.
deraadt [Sun, 20 Apr 2014 14:14:52 +0000 (14:14 +0000)]
gettimeofday() is portable enough and does not need a wrapper
deraadt [Sun, 20 Apr 2014 14:03:55 +0000 (14:03 +0000)]
calloc() rather than malloc+memset
guenther [Sun, 20 Apr 2014 14:03:04 +0000 (14:03 +0000)]
Fix indentation, adding braces and combining a nested if to reduce depth
mlarkin [Sun, 20 Apr 2014 14:02:57 +0000 (14:02 +0000)]
More dead stores removal in subr_hibernate.c
jsing [Sun, 20 Apr 2014 13:54:10 +0000 (13:54 +0000)]
KNF.
jsing [Sun, 20 Apr 2014 13:42:57 +0000 (13:42 +0000)]
KNF.
deraadt [Sun, 20 Apr 2014 12:51:18 +0000 (12:51 +0000)]
sync
guenther [Sun, 20 Apr 2014 12:48:19 +0000 (12:48 +0000)]
Chop off more SSLv2 tentacles and start fixing and noting y2038 issues.
APIs that pass times as longs will have to change at some point...
Bump major on both libcrypto and libssl.
ok tedu@
tedu [Sun, 20 Apr 2014 12:30:41 +0000 (12:30 +0000)]
return after error instead of plowing ahead. noticed by mancha1 at zoho
claudio [Sun, 20 Apr 2014 12:22:16 +0000 (12:22 +0000)]
Cleanup a bit, switch on bcopy to memcpy and move a function a bit up
claudio [Sun, 20 Apr 2014 11:25:18 +0000 (11:25 +0000)]
When switching rdomains the sadl needs to be removed and re-added from the
RB lookup tree because the rdomain id is part of the lookup key.
Without this the RB tree gets corrupted and in the worst case a use after
free can happen when the interface is destroyed.
Why the sadl addresses are added to the tree in the first place is something
to reconsider.
OK henning@, mpi@, sthen@
rpe [Sun, 20 Apr 2014 10:51:59 +0000 (10:51 +0000)]
Simplify shell pattern.
OK krw@
reyk [Sun, 20 Apr 2014 10:46:20 +0000 (10:46 +0000)]
Partially revert the previous: snmp_agentx_ping() didn't leak the pdu
because it is added to a list on the handle and eventually released
later with the handle itself. This confuses leak detection tools like
clang, so at least add a comment that it is not a leak.
ok blambert@
deraadt [Sun, 20 Apr 2014 10:43:15 +0000 (10:43 +0000)]
sync
deraadt [Sun, 20 Apr 2014 10:31:43 +0000 (10:31 +0000)]
Use calloc(a,b) instead of malloc(a*b) + memset(a*b). I don't know if
this instance is integer-overflowable, but we cannot keep hand-auditing
every instance (or apathetically ignoring these issues) when the simple
calloc idiom is better in the presence of a good calloc(). It is simply
unfeasible to always enter correct range checks before the aggregate
size calculation, just go find some 4000 lines of code, REPAIR THEM ALL,
then come back and tell me I am wrong.
This only works on systems where calloc() does the integer overflow
check, but if your system doesn't do this, you need to ask your vendor
WHY THEY ARE 10 YEARS BEHIND IN BEST PRACTICE? This is the kind of
problem that needs to be solved at the right layer.
malloc integer-overflow was implicated in the 2002 OpenSSH hole. OpenSSH
and much other code is now written to use calloc(), for instance OpenSSH
has 103 calls to it. We feel safer with our use of calloc(). It is a
natural approach for us to use calloc(). How safe do you feel on systems
which lack that range check in their calloc()?
Good writeup from 2006: http://undeadly.org/cgi?action=article&sid=
20060330071917
jmatthew [Sun, 20 Apr 2014 09:49:23 +0000 (09:49 +0000)]
Update hotplug. Add qle_get_port_name_list, use it to discover local
loop ports and other fabric ports that have logged in to us, and check
that we're still logged in to other fabric ports. Rearrange the update
processing loop so we attach and detach targets last, since we need to get
all the way through before we've identified what's gone missing. Handle
fabric port login errors a bit more usefully too.
deraadt [Sun, 20 Apr 2014 09:40:37 +0000 (09:40 +0000)]
Undo a calloc() replacement. It lacks the integer overflow check that
the system one has.
henning [Sun, 20 Apr 2014 09:38:19 +0000 (09:38 +0000)]
move in_cksum_phdr from in.h (under #ifdef _KERNEL, at least) to ip_output.c
nothing except in_proto_cksum_out() uses it any more, and that's a good
thing. was on tech for 3 months, discussed with many
henning [Sun, 20 Apr 2014 09:30:56 +0000 (09:30 +0000)]
nuke in_cksum_addword()
don't we all love functions implemented in header files? was under #ifdef
_KERNEL at least.
incremental checksum updates don't really make sense any more, this is
incredibly hard to get right, and doesn't fit the way our kernel deals
with the checksums these days. consequently, nothing uses in_cksum_addword
any more.
was on tech for 3 months, tested by & discussed with many.
deraadt [Sun, 20 Apr 2014 09:29:36 +0000 (09:29 +0000)]
Remove more commentary about recently removed des support
from Daniel Dickman
reyk [Sun, 20 Apr 2014 09:29:22 +0000 (09:29 +0000)]
Fix a small leak in the error path.
logan [Sun, 20 Apr 2014 09:24:26 +0000 (09:24 +0000)]
Add support for SSHFP DNS records for
ED25519 key types.
OK from djm@
jsing [Sun, 20 Apr 2014 09:04:56 +0000 (09:04 +0000)]
KNF.
tedu [Sun, 20 Apr 2014 04:45:09 +0000 (04:45 +0000)]
reset imprint to NULL to avoid double free. from mancha1 at zoho
djm [Sun, 20 Apr 2014 02:49:32 +0000 (02:49 +0000)]
add a canonical 6.6 + curve25519 bignum fix fake version that I can
recommend people use ahead of the openssh-6.7 release
djm [Sun, 20 Apr 2014 02:30:25 +0000 (02:30 +0000)]
use get/put_u32 to load values rather than *((UINT32 *)p) that breaks on
strict-alignment architectures; reported by and ok stsp@
dlg [Sun, 20 Apr 2014 00:50:18 +0000 (00:50 +0000)]
make the status handler more like rdac and emc. the big functional change
is to check xs->status on completion to make sure it worked.
dlg [Sun, 20 Apr 2014 00:08:26 +0000 (00:08 +0000)]
emc on my cx500 works as well as rdac on all my rebadged engenio kit.
naddy [Sat, 19 Apr 2014 19:44:23 +0000 (19:44 +0000)]
Hardware receive IP checksum offload for IPv4 is no longer supported.
tedu [Sat, 19 Apr 2014 19:40:11 +0000 (19:40 +0000)]
release buffers fix was lost in merge. put it back.
tedu [Sat, 19 Apr 2014 18:44:25 +0000 (18:44 +0000)]
remove hosts.equiv xr