kn [Sat, 25 Mar 2023 16:01:37 +0000 (16:01 +0000)]
sync nd6_resolve() EINVAL handling with arpresolve()
Less diff between them; merging three returns into one also reduces
upcoming unlock diffs. OK bluhm
kn [Sat, 25 Mar 2023 15:59:23 +0000 (15:59 +0000)]
sync nd6_resolve() uptime handling with arpresolve()
makes the two familiar functions look more alike; OK bluhm
krw [Sat, 25 Mar 2023 15:58:44 +0000 (15:58 +0000)]
Make *_name fields char * instead of char[]. Specify desired
width of output in printf() rather than "%-*s" and sizeof(name) +
1. Clearer, may even save some bytes as many names are shorter
than the max.
Rename PRT_print_mbrtypes() to PRT_print_mbrmenu() and
PRT_print_gpttypes() to PRT_print_gptmenu() to remove implied
completeness of list presented in menu.
No functional change.
otto [Sat, 25 Mar 2023 15:22:06 +0000 (15:22 +0000)]
Change malloc chunk sizes to be fine grained.
The basic idea is simple: one of the reasons the recent sshd bug
is potentially exploitable is that a (erroneously) freed malloc
chunk gets re-used in a different role. malloc has power of two
chunk sizes and so one page of chunks holds many different types
of allocations. Userland malloc has no knowledge of types, we only
know about sizes. So I changed that to use finer-grained chunk
sizes.
This has some performance impact as we need to allocate chunk pages
in more cases. Gain it back by allocation chunk_info pages in a
bundle, and use less buckets is !malloc option S. The chunk sizes
used are 16, 32, 48, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320,
384, 448, 512, 640, 768, 896, 1024, 1280, 1536, 1792, 2048 (and a
few more for sparc64 with its 8k sized pages and loongson with its
16k pages).
If malloc option S (or rather cache size 0) is used we use strict
multiple of 16 sized chunks, to get as many buckets as possible.
ssh(d) enabled malloc option S, in general security sensitive
programs should.
See the find_bucket() and bin_of() functions. Thanks to Tony Finch
for pointing me to code to compute nice bucket sizes.
ok tb@
deraadt [Sat, 25 Mar 2023 15:07:19 +0000 (15:07 +0000)]
things will be ready a bit earlier
krw [Sat, 25 Mar 2023 15:05:45 +0000 (15:05 +0000)]
Rename *_sname fields/functions to *_name to remove implied
shortness of the names.
No functional change.
tb [Sat, 25 Mar 2023 11:35:02 +0000 (11:35 +0000)]
Use strict and warnings
tb [Sat, 25 Mar 2023 11:28:55 +0000 (11:28 +0000)]
Make an attempt at reducing the eyebleed in bn_prime.pl
Use a style more resembling KNF and drop lots of parentheses. Simplify
a few things. No change in generated output on success.
tb [Sat, 25 Mar 2023 11:09:58 +0000 (11:09 +0000)]
Use Eric Young's usual license in the proper place rather than a weird
commented-out license stub in a HERE document.
tb [Sat, 25 Mar 2023 11:03:45 +0000 (11:03 +0000)]
Add RCSID
tb [Sat, 25 Mar 2023 11:02:26 +0000 (11:02 +0000)]
Add checks to ensure the uint16_t array isn't overflowed when this
script is run. This is more of an issue with uint16_t now than it
was with prime_t aka BN_ULONG before r1.6.
tb [Sat, 25 Mar 2023 10:51:18 +0000 (10:51 +0000)]
Zap an empty line
tb [Sat, 25 Mar 2023 10:45:20 +0000 (10:45 +0000)]
Drop unnecessary casts from and to void *
tb [Sat, 25 Mar 2023 10:41:52 +0000 (10:41 +0000)]
Unindent asn1_bio_get_ex()
kettenis [Sat, 25 Mar 2023 10:14:58 +0000 (10:14 +0000)]
The "snps,reset-*" properties are deprecatedand are being replaced with
"reset-*" proprties on the PHY device tree nodes. Add support for this.
ok dlg@
tb [Sat, 25 Mar 2023 09:23:44 +0000 (09:23 +0000)]
Guard GF2m-specifics with OPENSSL_NO_EC2M
tb [Sat, 25 Mar 2023 09:21:17 +0000 (09:21 +0000)]
Enable FRP256v2 tests
This was previously disabled because tb apparently can't grep. Exercise
this curve as well as part of the new test cases in ECDH wycheproof.
tb [Sat, 25 Mar 2023 09:17:14 +0000 (09:17 +0000)]
Remove dead/unreachable code
A copy-paste error would have resulted in a modified msg in case ctLen == 0
or msgLen == 0. So obviously this is unreachable code.
tb [Sat, 25 Mar 2023 09:12:35 +0000 (09:12 +0000)]
Pull in <openssl/rsa.h> directly
This is needed for many reasons. It is currently pulled in via x509.h
but only when OPENSSL_NO_DEPRECATED is undefined. Again this should be
fixed in the public header as well.
tb [Sat, 25 Mar 2023 09:09:28 +0000 (09:09 +0000)]
BN_free() is defined in <openssl/bn.h>
This is currently pulled in via dsa.h and ecdsa.h, but only when
OPENSSL_NO_DEPRECATED is not defined. We should fix this in the
public header, too - let's wait a bit with that.
deraadt [Sat, 25 Mar 2023 05:49:50 +0000 (05:49 +0000)]
we are now hacking on 7.3-current
deraadt [Sat, 25 Mar 2023 00:09:51 +0000 (00:09 +0000)]
correct day of week
millert [Thu, 23 Mar 2023 18:57:10 +0000 (18:57 +0000)]
This year Lebanon springs forward April 20/21 not March 25/26.
This change is not yet part of an iana-tz or global-tz release.
millert [Thu, 23 Mar 2023 16:12:10 +0000 (16:12 +0000)]
Update to 2023agtz from https://github.com/JodaOrg/global-tz
* Egypt now uses DST again, from April through October.
* This year Morocco springs forward April 23, not April 30.
* Palestine delays the start of DST this year.
* Much of Greenland still uses DST from 2024 on.
* America/Yellowknife now links to America/Edmonton.
jsg [Thu, 23 Mar 2023 13:15:02 +0000 (13:15 +0000)]
correct rk3308 clk_32k_sel mask
ok jmatthew@
stsp [Thu, 23 Mar 2023 12:43:38 +0000 (12:43 +0000)]
update sppp(4) docs to mention remote address range hack
As already documented in pppoe(4). I missed updating sppp(4) years
ago when support for the wildcard address range was added.
jsg [Thu, 23 Mar 2023 11:40:42 +0000 (11:40 +0000)]
avoid use after free
ok miod@ kettenis@
jsg [Thu, 23 Mar 2023 01:41:12 +0000 (01:41 +0000)]
fix off-by-one in pf_state_expires() bounds test
such a value would have triggered a KASSERT()
ok sashan@ deraadt@
op [Wed, 22 Mar 2023 22:09:37 +0000 (22:09 +0000)]
plug another leak in addctag; found + ok tb@
jsg [Wed, 22 Mar 2023 21:41:28 +0000 (21:41 +0000)]
fix GMAC_CHAN_RX_CONTROL write
ok patrick@ kettenis@
op [Wed, 22 Mar 2023 19:42:41 +0000 (19:42 +0000)]
avoid memleak / crash in addctag
the l pointer is advanced, so if the line is malformed `goto cleanup'
will free(NULL) or a pointer inside l.
semplification and ok tb@
op [Wed, 22 Mar 2023 18:18:35 +0000 (18:18 +0000)]
plug memleak in error path
based on a diff by lux (lx [at] shellcodes [dot] org), thanks!
Diff via, tweak and ok tb@
op [Wed, 22 Mar 2023 18:10:07 +0000 (18:10 +0000)]
delete trailing whitespaces; no functional change
claudio [Wed, 22 Mar 2023 17:14:57 +0000 (17:14 +0000)]
Bump version
denis [Wed, 22 Mar 2023 17:01:07 +0000 (17:01 +0000)]
Reverse bus_space_unmap(9) order
When `unmap_1` is reached we should bus_space_unmap() sc_hwrm_* and not sc_db_*.
ok miod@
jmc [Tue, 21 Mar 2023 22:57:38 +0000 (22:57 +0000)]
update the description for bwfm(4);
patrick [Tue, 21 Mar 2023 22:31:17 +0000 (22:31 +0000)]
Document support for the BCM4378 / BCM4387 chipsets.
from Brad
claudio [Tue, 21 Mar 2023 14:52:36 +0000 (14:52 +0000)]
Improve length checks for ATTR_MP_REACH_NLRI.
Based on a report by cjt (melissa_cjt at 163.com)
OK tb@
jsg [Tue, 21 Mar 2023 09:44:35 +0000 (09:44 +0000)]
remove uneeded includes
deraadt [Sun, 19 Mar 2023 23:22:53 +0000 (23:22 +0000)]
sync
kettenis [Sun, 19 Mar 2023 20:32:13 +0000 (20:32 +0000)]
Aggressively randomize the location of the stack on all 64-bit architectures
except alpha. This will put the stack at a random location in the upper
1/4th of the userland virtual address space providing up to 26 additional
bits of randomness in the address. Skip alpha for now since it currently
puts the stack at a (for a 64-bit architecture) very low address. Skip
32-bit architectures for now as well since those have a much smaller
virtual address space and we need more time to figure out what a safe
amount of extra randomizations is. These architectures will continue to
use a mildly randomized stack address through the existing stackgap random
mechanism. We will revisit this after 7.3 is released.
This should make it harder for an attacker to find the stack.
ok deraadt@, miod@
millert [Sun, 19 Mar 2023 16:43:44 +0000 (16:43 +0000)]
mda_expand_format: simplify token name extraction for %{name}
It is simpler to compute the length based on the start and end
pointers and pass that value to memcpy(), adding an explicit NUL
terminator after copying. OK op@
kettenis [Sun, 19 Mar 2023 11:22:50 +0000 (11:22 +0000)]
rkpciephy(4)
kettenis [Sun, 19 Mar 2023 11:18:11 +0000 (11:18 +0000)]
Enable rkpciephy(40.
kettenis [Sun, 19 Mar 2023 11:17:16 +0000 (11:17 +0000)]
Add rkpciephy(4), ad friver for the PCIe 3.0 PHY dound on the RK356x.
The driver in principle supports bifurcation but this is (largely) untested.
ok dlg@
dlg [Sun, 19 Mar 2023 10:18:17 +0000 (10:18 +0000)]
improve dmesg output to help with debugging.
for SoCs that can provide multiple instances of rkclock, let them
provide a name that will be printed during attach so you can tell
which one is doing what.
when rkclock_set_frequency isn't handling a clock, have it print
which rkclock instance isn't handling a clock. while here, print
the clock index the same way the #define refers to them.
ok kettenis@
kettenis [Sun, 19 Mar 2023 09:46:40 +0000 (09:46 +0000)]
Use a task to switch clocks on RK3568 as the clock API needs process context.
ok jmatthew@
jsg [Sun, 19 Mar 2023 09:38:43 +0000 (09:38 +0000)]
regen
jsg [Sun, 19 Mar 2023 09:38:06 +0000 (09:38 +0000)]
add another Navi 33 device id
0x7483 rev 0xcf is Radeon RX 7600M according to
Radeon Software for Linux version 22.40.3 (5.4.3) libdrm-amdgpu-common
kettenis [Sun, 19 Mar 2023 09:32:11 +0000 (09:32 +0000)]
Add a few more RK3568 clocks.
ok dlg@
kettenis [Sun, 19 Mar 2023 08:41:49 +0000 (08:41 +0000)]
Use a task to switch clocks on RK3568 as the clock API needs process context.
ok jmatthew@
jsg [Sun, 19 Mar 2023 06:02:07 +0000 (06:02 +0000)]
disable POOL_DEBUG for release
ok deraadt@
millert [Sun, 19 Mar 2023 01:43:11 +0000 (01:43 +0000)]
Fix a potential NULL dereference in the unpriv child expanding %{mda}.
It is not legal to use %{mda} in anything but an mda wrapper.
mda_expand_token() will now return an error when %{mda} is used and
mda_command is NULL. OK op@
tb [Sat, 18 Mar 2023 13:04:02 +0000 (13:04 +0000)]
KNF: some missing spaces after comma
jmc [Sat, 18 Mar 2023 11:44:53 +0000 (11:44 +0000)]
sourceaddr:
- show that -ifp and "address" do not mix
- show how to reset value (from claudio)
- tweak text
ok claudio
tb [Sat, 18 Mar 2023 09:09:11 +0000 (09:09 +0000)]
Rename bn_mod_exp_zero to the more appropriate bn_mod_exp
tb [Sat, 18 Mar 2023 09:04:05 +0000 (09:04 +0000)]
Retire the bn_mod_exp test.
Its is fully covered by bn_mod_exp_zero now.
tb [Sat, 18 Mar 2023 08:55:42 +0000 (08:55 +0000)]
Reimplement a variant of the bn_mod_exp tests from scratch
This exercises the same corner cases as bn_mod_exp and a few more.
With input from jsing
jsg [Sat, 18 Mar 2023 08:20:20 +0000 (08:20 +0000)]
fixes for mandoc -Tlint
ok tb@
deraadt [Fri, 17 Mar 2023 22:52:22 +0000 (22:52 +0000)]
remove -beta tag
millert [Fri, 17 Mar 2023 19:44:15 +0000 (19:44 +0000)]
Document M_LOG flag; from Peter J. Philipp.
miod [Fri, 17 Mar 2023 19:20:19 +0000 (19:20 +0000)]
Move annoying yet harmless diagnostic message into #ifdef DEBUG.
claudio [Fri, 17 Mar 2023 16:11:09 +0000 (16:11 +0000)]
Adjust sourceaddr argument parser.
Only print the sourceaddrs if no argument was passed. If arguemnts
are set make sure that either and address is present or that an ifp
was given. This make the command behave a more like other route commands.
OK deraadt@
claudio [Fri, 17 Mar 2023 11:14:10 +0000 (11:14 +0000)]
Fix rtr_parse_aspa(), the spas array is actually not copied over into
the rtr_aspa struct so access them directly from the buf using offset
as the address of the first element.
OK tb@
jsg [Thu, 16 Mar 2023 22:44:35 +0000 (22:44 +0000)]
after updating amdgpu-firmware from
20221214 to
20230310 a new
warning appeared in dmesg on renoir:
[drm] psp gfx command LOAD_TA(0x1) failed and response status is (0x7)
[drm] psp gfx command INVOKE_CMD(0x3) failed and response status is (0x4)
psp_securedisplay_parse_resp_status *ERROR* Secure display: Generic Failure.
psp_securedisplay_initialize *ERROR* SECUREDISPLAY: query securedisplay TA failed. ret 0x0
This is likely related to not implementing all the HDCP paths.
Return early in psp_securedisplay_initialize() to avoid this.
I suspect the newer renoir firmware adds a TA_FW_TYPE_PSP_SECUREDISPLAY
component the older one didn't have.
reported by jmc@
kettenis [Thu, 16 Mar 2023 18:33:19 +0000 (18:33 +0000)]
Add code to bring up the PCIe controller on the RK356x.
ok dlg@
bluhm [Thu, 16 Mar 2023 18:22:08 +0000 (18:22 +0000)]
When syslogd is sending messages via UDP to a remote loghost, it
stops if there is a permanent error. Add EACCES generated by pf
to the list of transient errors. This restores pre-6.5 behavior
and continues logging after pf.conf has been fixed.
OK millert@ deraadt@ mvs@
miod [Thu, 16 Mar 2023 18:04:07 +0000 (18:04 +0000)]
Update for 7.3.
job [Thu, 16 Mar 2023 15:45:38 +0000 (15:45 +0000)]
Consistent phrasing: function -> function pointer
job [Thu, 16 Mar 2023 15:21:44 +0000 (15:21 +0000)]
Add X509_STORE_{set,get}_check_issued and X509_STORE_CTX_get_check_issued to manpage
with and OK tb@
tb [Thu, 16 Mar 2023 15:07:42 +0000 (15:07 +0000)]
sync
tb [Thu, 16 Mar 2023 15:06:17 +0000 (15:06 +0000)]
Install EVP_CIPHER_meth_new.3
tb [Thu, 16 Mar 2023 15:05:23 +0000 (15:05 +0000)]
Add EVP_CIPHER_meth_* documentation from OpenSSL 1.1
This is essentially the original text with a few tweaks and fixes by me,
removing parts inapplicable to LibreSSL. There are dangling references to
EVP_CIPHER_CTX_copy(3) and EVP_CIPHER_CTX_get_cipher_data(3). This all
isn't great, but it's better than nothing. Probably good enough for these
rarely used functions.
job [Thu, 16 Mar 2023 12:01:47 +0000 (12:01 +0000)]
Update manpage for X509_CRL_get0_tbs_sigalg()
OK tb@
kettenis [Thu, 16 Mar 2023 10:33:44 +0000 (10:33 +0000)]
Add missing dependecy for rkcomphy(4); pointed out by dlg@
tb [Thu, 16 Mar 2023 08:16:21 +0000 (08:16 +0000)]
Bump LibreSSL version to 3.7.2
kn [Thu, 16 Mar 2023 06:57:11 +0000 (06:57 +0000)]
revert previous, stsp made WEP work on bwfm(4)
stsp [Wed, 15 Mar 2023 22:47:35 +0000 (22:47 +0000)]
make WEP encryption work on bwfm(4)
based on an initial diff by jsg@
brokenness pointed out by kn@
ok jsg@
jmc [Wed, 15 Mar 2023 22:39:58 +0000 (22:39 +0000)]
tweak sourceaddr:
- remove "-inet|-inet6" as it is not generally meaningful
- remove the qualifier "if set": sourceaddr now works nicely in cases
where no "address is given
millert [Wed, 15 Mar 2023 22:12:00 +0000 (22:12 +0000)]
Fix a number of out of bound reads in DNS response parsing.
Originally from djm@. OK deraadt@ florian@ bluhm@
benno [Wed, 15 Mar 2023 21:42:23 +0000 (21:42 +0000)]
state that binary updates are not available for all platforms/architectures.
triggered by a bug report by 'kodcode', thanks.
wording adjusted by jmc@, ok phessler@
djm [Wed, 15 Mar 2023 21:19:57 +0000 (21:19 +0000)]
openssh-9.3
deraadt [Wed, 15 Mar 2023 19:54:32 +0000 (19:54 +0000)]
slightly earlier, and tweak some dates
nicm [Wed, 15 Mar 2023 19:23:22 +0000 (19:23 +0000)]
Do not leak screen in popups, GitHub issue 3492.
millert [Wed, 15 Mar 2023 17:01:35 +0000 (17:01 +0000)]
Fix the length check when computing a fake challenge for users not
in the S/Key database. If the system hostname is longer than 126
characters this could result in NUL bytes being written past the
end of a stack buffer. There is no impact on systems with a hostname
126 characters or less. Found by Qualys. OK deraadt@
kettenis [Wed, 15 Mar 2023 13:01:40 +0000 (13:01 +0000)]
Add missing nameref resolving for the _DEP() package elements that indicate
dependencies between ACPI devices.
ok dlg@, deraadt@
job [Wed, 15 Mar 2023 11:09:34 +0000 (11:09 +0000)]
Show MFTs as part of the signature path
no objection tb@
claudio [Wed, 15 Mar 2023 08:43:51 +0000 (08:43 +0000)]
For now pass AF_UNSPEC to printsource() to ensure that both inet and inet6
addrs are fetched from the kernel. This needs more cleanup.
claudio [Wed, 15 Mar 2023 08:42:14 +0000 (08:42 +0000)]
Make route sourceaddr always print the used addresses for inet and inet6.
Print 'default' if no sourceaddr is set and the default algorithm is used.
With and OK kn@ deraadt@
jsg [Wed, 15 Mar 2023 08:36:33 +0000 (08:36 +0000)]
drm/amdgpu/vcn: Disable indirect SRAM on Vangogh broken BIOSes
From Guilherme G. Piccoli in amd-staging-drm-next
https://gitlab.freedesktop.org/drm/amd/-/issues/2385
This fixes amdgpu failing to init on Steam Deck after the drm 6.1 update:
[drm] failed to load ucode VCN0_RAM(0x3A) [drm] psp gfx command LOAD_IP_FW(0x6)
failed and response status is (0xFFFF0000)
[drm] *ERROR* ring vcn_dec_0 test failed (-60)
[drm] *ERROR* hw_init of IP block <vcn_v3_0> failed -60
drm:pid0:amdgpu_device_init *ERROR* amdgpu_device_ip_init failed
drm:pid0:amdgpu_attachhook *ERROR* Fatal error during GPU init
reported and tested by bentley@ on:
bios0: vendor Valve version "
F7A0113" date 11/04/2022
bios0: Valve Jupiter
jsg [Wed, 15 Mar 2023 08:24:56 +0000 (08:24 +0000)]
handle dmi_get_system_info(DMI_BIOS_VERSION)
jsg [Wed, 15 Mar 2023 08:20:52 +0000 (08:20 +0000)]
store bios version, needed for amdgpu Steam Deck quirk
nicm [Wed, 15 Mar 2023 08:15:39 +0000 (08:15 +0000)]
Fix command prompt not to always append argument but only if there has
actually been expansion. GitHub issue 3493.
tb [Wed, 15 Mar 2023 06:34:07 +0000 (06:34 +0000)]
Return the signature length after successful signing operation
This is required behavior of the EVP_DigestSign() API, but seemingly
almost nothing uses this. Well, turns out ldns does.
Reported by Stephane. Helpful comments by sthen.
ok jsing
tb [Wed, 15 Mar 2023 06:30:21 +0000 (06:30 +0000)]
Add comments that explain why things are done in this strange order.
There's some method to this madness.
ok jsing
tb [Wed, 15 Mar 2023 06:28:55 +0000 (06:28 +0000)]
Push calloc() of ndef_aux down as far as possible and
pull the setting of the ex_arg up, so we can do error
checking.
ok jsing
tb [Wed, 15 Mar 2023 06:22:42 +0000 (06:22 +0000)]
Error check BIO_asn1_set_{prefix,suffix}() calls
ok jsing
tb [Wed, 15 Mar 2023 06:14:02 +0000 (06:14 +0000)]
Streaming BIOs assume they can write to NULL BIOs
At least SMIME_text() relies on this. Pushing an error on the stack trips
PKCS7 regress in py-cryptography, so indicate nothing was written instead
of throwing an error.
Reported by Alex Gaynor a while back
ok jsing
jsing [Wed, 15 Mar 2023 04:30:20 +0000 (04:30 +0000)]
Ensure negative input to BN_mod_exp_mont_consttime() is correctly reduced.
A negative input to BN_mod_exp_mont_consttime() is not correctly reduced,
remaining negative (when it should be in the range [0, m)). Fix this by
unconditionally calling BN_nnmod() on the input.
Fixes ossfuzz #55997.
ok tb@
jsing [Wed, 15 Mar 2023 04:26:23 +0000 (04:26 +0000)]
Include tests with negative values in BN_mod_exp* regress.
This currently fails.