Age | Commit message (Collapse) | Author |
|
Found with the afl fuzzer.
|
|
|
|
Remove direct calls to printf from the tls_check_hostname() path. This allows
NUL byte error messages to bubble up to the caller, to be logged in a
program-appropriate way. It also removes non-portable calls to getprogname().
ok jsing@
|
|
with malloc.conf J/Junk. This problem was fixed by espie in
targequiv.c rev 1.6. Crash found with the afl fuzzer.
|
|
the macro with the same name. This often causes m4 to crash with
malloc.conf F/Freeguard though not reliably.
Crash found with the afl fuzzer.
|
|
using it.
|
|
refactor to make it a bit more readable
|
|
in particular .sp which uses "v", when the scale is not specified;
cures groff-mandoc differences in about a dozen Xenocara manuals
|
|
This is needed by the portable tree to point directly to the newly-built
binaries when running unit tests.
discussed with jsing@ and others
|
|
string we are testing.
Add tests to verify that we get SIGSEGV when passed a NULL src or dst.
It is better to crash than for an implementation to check for NULL
and try to recover.
|
|
fortunately, it already seems to work
|
|
|
|
|
|
|
|
In particular, make it work in no-fill mode, too.
Reminded by Carsten dot Kunze at arcor dot de (Heirloom roff).
|
|
|
|
* The first argument of .Pf is not parsed.
* Normal delimiter handling does not apply to the first argument of .Pf.
* Warn if nothing follows a prefix (inspired by groff_mdoc(7)).
* In that case, do not suppress spacing.
|
|
is a job for makewhatis(8)/mandoc.db(5), not for the parser.
Removes 150 lines from source files and 4k (1%) from the binary.
Bloat found by deraadt@.
|
|
not used by a single manual in OpenBSD and just print library names;
will remain in the portable version for use by FreeBSD and NetBSD.
Removes 150 lines from source tree and 16 Kilobytes (4%) from binary.
Bloat found by deraadt@.
|
|
Since this was the last remaining FATAL error in this area,
this change will allow major simplifications in the mdoc(7) parser.
|
|
1. Correctly parse stray .Ec without preceding .Eo,
avoiding an assertion violation found by jsg@ with afl.
2. Correctly parse .Ec arguments when breaking another block.
3. Correct spacing around closing delimiter when breaking another block.
4. Sync some related formatting control from -Tascii to -Thtml.
|
|
and not trigger an assertion when there is more than one argument;
the latter found by jsg@ with afl.
|
|
fixing an assertion failure found by jsg@ with afl.
|
|
|
|
-mtu. Triggered by a report from Florian Riehm on tech@.
Note that two of these tests are using IPv6 addresses and expose another
bug with ::1. I'll deal with this afterward unless someone else(tm)
fixes it.
|
|
ok tedu@ miod@ deraadt@
|
|
ok bluhm@
|
|
idea from and ok ingo@
|
|
ok otto
|
|
which can for example happen for .Sh Xo .Sh without .Xc.
Crash found by jsg@ with afl.
|
|
|
|
positives. Fixing it is not worth the hassle; if we want something
like this, it ought to be done in the context of makewhatis(8) and
mandoc.db(5). As it stands, its only effect is to discourage people
from running our regression suite, which is bad. I got a report
from daniel@ that part of it even crashes.
|
|
|
|
for pthread_atfork()
|
|
|
|
output handler because the high level terminal formatters could be
tricked into setting the left margin further to the right than the
right margin. Today, jsg@ found more of these with afl.
Change the internal interface between both levels, aiming for
simplicity and robustness of the code. Treat both margins as
*independent* settings: Now, termp.offset is the requested left
margin, and termp.rmargin is the available space. Let the lower
level cope with that case of insufficient space.
Obviously, high level code that does centering or flush right
still has to do careful checks, so i did a full audit of margin
settings in the terminal formatters.
Fixes crashes caused by excessively long title or date strings in
the man(7) footer, operating system or date strings in the mdoc(7)
footer, volume strings in the man(7) or mdoc(7) header, and a few
cases related to some non-prologue macros.
|
|
|
|
1. The first argument of .Fn is not supposed to be parsed.
2. The .Fn macro is not supposed to reopen its scope after punctuation.
|
|
just like groff; minibug noticed by bentley@.
|
|
|
|
|
|
ok deraadt@
|
|
they are ignored, just in the same way as for request names
and for low-level macro names.
This also cures a warning in the pod2man(1) preamble.
|
|
|
|
ok espie@ deraadt@ millert@ tedu@
|
|
* .No selects the default font; relevant e.g. in .Bf blocks
* no need to force empty .Li elements
* closing delimiters as leading macro arguments do not suppress space
* opening delimiters at the end of a macro line do not suppress space
* correctly handle delimiter spacing in -Tman
As a side effect, these fixes let mandoc warn about empty .No macros
as requested by bentley@.
|
|
|
|
We would generate an invalid KRL when revoking certs by serial
number for multiple CA keys due to a section being written out
twice.
Also extend the regress test to catch this case by having it
produce a multi-CA KRL.
Reported by peter AT pean.org
|
|
the `vbl' variable includes the left margin, but `vis' does not.
Prevent a `vis' underflow that caused a bogus blank line.
Bug reported by Carsten Kunze, found in less(1): .Bl -tag ... .It " "
|
|
(behavior of sigwait() when signal not blocked in all threads)
|