History log of /freebsd-current/usr.bin/vtfontcvt/vtfontcvt.c
Revision Date Author Comments
# 5e3934b1 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

usr.bin: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix


# 1d386b48 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 119db52f 19-Jul-2022 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: improve hex font format validation

Previously an EOF would result in sscanf returning -1 leading to a
crash.

MFC after: 1 week
Sponsored by: The FreeBSD Foundation


# ef2d0816 19-Jul-2022 Mateusz Piotrowski <0mp@FreeBSD.org>

vtfontcvt(8): Update usage() to match vtfontcvt.8

MFC after: 2 weeks


# df777aeb 18-Jul-2022 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: correct usage

Commit e7fd9688ea97 changed vtfontcvt's command line parsing, but did
not correctly update the usage (it omitted the new -o flag).

Fixes: e7fd9688ea97 ("Move font related data structured to...")
MFC after: 1 week
Sponsored by: The FreeBSD Foundation


# 4e1e3ff5 17-Feb-2022 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: update FreeBSD Foundation copyrights

Remove "All Rights Reserved"


# a0d701f6 12-May-2021 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: minor style(9) fixes from clang-format

Found during clang-format experiments (in D26340).

Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D30237


# e7fd9688 14-Jun-2020 Toomas Soome <tsoome@FreeBSD.org>

Move font related data structured to sys/font.c and update vtfontcvt

Prepare support to be able to handle font data in loader, consolidate
data structures to sys/font.h and update vtfontcvt.

vtfontcvt update is about to output set of glyphs in form of C source,
the implementation does allow to output compressed or uncompressed font
bitmaps.

Reviewed by: bcr
Differential Revision: https://reviews.freebsd.org/D24189


# 40adef9e 23-Aug-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: simplify rshift_row

We don't need to specify the buffer size in both bytes and bits.

MFC after: 1 week
Sponsored by: The FreeBSD Foundation


# 912a01b3 25-Jun-2019 Warner Losh <imp@FreeBSD.org>

Replay r349333 by emaste accidentally reverted by r349352

vtfontcvt: improve .bdf validation

Previously if we had a FONTBOUNDINGBOX or DWIDTH entry that had missing
or invalid values and and failed sscanf, we would proceeded with
partially initialized bounding box / device width variables.

Reported by: afl (FONTBOUNDINGBOX)
MFC with: r349100
Sponsored by: The FreeBSD Foundation


# f5a95d9a 24-Jun-2019 Warner Losh <imp@FreeBSD.org>

Remove NAND and NANDFS support

NANDFS has been broken for years. Remove it. The NAND drivers that
remain are for ancient parts that are no longer relevant. They are
polled, have terrible performance and just for ancient arm
hardware. NAND parts have evolved significantly from this early work
and little to none of it would be relevant should someone need to
update to support raw nand. This code has been off by default for
years and has violated the vnode protocol leading to panics since it
was committed.

Numerous posts to arch@ and other locations have found no actual users
for this software.

Relnotes: Yes
No Objection From: arch@
Differential Revision: https://reviews.freebsd.org/D20745


# 2771ab33 24-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: improve .bdf validation

Previously if we had a FONTBOUNDINGBOX or DWIDTH entry that had missing
or invalid values and and failed sscanf, we would proceeded with
partially initialized bounding box / device width variables.

Reported by: afl (FONTBOUNDINGBOX)
MFC with: r349100
Sponsored by: The FreeBSD Foundation


# 97634938 16-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: correct typo in hex parsing update

PR: 205707
Submitted by: Dmitry Wagin
MFC with: 349100
Event: Berlin Devsummit 2019


# 08584e2c 16-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: improve .bdf validation

Previously if we had a BBX entry that had invalid values (e.g. bounding
box outside of font bounding box) and failed sscanf (e.g., because it
had fewer than four values) we skipped the BBX value validation and then
triggered an assertion failure.

Reported by: afl
MFC with: r349100
Event: Berlin Devsummit 2019
Sponsored by: The FreeBSD Foundation


# fd0e3f7c 16-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: improve .bdf verification

Previously we would crash if the BBX y-offset was outside of the font
bounding box.

Reported by: afl
MFC with: r349100
Event: Berlin Devsummit 2019
Sponsored by: The FreeBSD Foundation


# 0f17b429 15-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: initialize another variable to quiet GCC warning

I believe this case could be triggered by a broken .bdf font.

PR: 205707
Reported by: ci.freebsd.org
MFC with: 349100
Event: Berlin Devsummit 2019
Sponsored by: The FreeBSD Foundation


# ff31ddeb 16-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: initialize bbwbytes to avoid GCC 4.2.1 uninitialized warning

PR: 205707
MFC with: 349100
Event: Berlin Devsummit 2019
Sponsored by: The FreeBSD Foundation


# 3bd2e9a5 16-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: improve BDF and hex font parsing

Support larger font sizes.

PR: 205707
Submitted by: Dmitry Wagin (original version)
MFC after: 2 weeks
Event: Berlin Devsummit 2019
Differential Revision: https://reviews.freebsd.org/D20650


# cfe607d5 15-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: add comments in add_glyph

During review for PR 205707.

Event: Berlin Devsummit 2019


# a9de4100 08-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: allow out-of-order glyphs

PR: 205707
Reported by: mi
MFC after: 2 weeks
Event: Vienna Hackathon 2019
Sponsored by: The FreeBSD Foundation


# 24dd375e 05-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: exit on error if the input font has too many glyphs

The kernel has a limit of 131072 glyphs in a font; add the same check to
vtfontcvt so that we won't create a font file that the kernel will not
load.

PR: 205707
Submitted by: Dmitry Wagin
MFC after: 2 weeks


# 7e65018a 04-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: zero memory allocated by xmalloc

PR: 205707
Submitted by: Dmitry Wagin


# 4c42647e 04-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: include width and height in verbose info

PR: 205707
Submitted by: Dmitry Wagin


# 2810d238 04-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: rework height/width setting

Introduce VFNT_MAXDIMENSION to replace bare 128, add set_height, and
consistently use set_height and set_width.

PR: 205707
Submitted by: Dmitry Wagin


# d7bcf736 04-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: unwrap a line per style(9)

PR: 205707
Submitted by: Dmitry Wagin


# 3c7951c7 04-Jun-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: use VFNT_MAP_{NORMAL|BOL}_RH symbolic constants

PR: 205707
Reported by: Dmitry Wagin
MFC after: 1 month


# 0235d5e2 06-Feb-2019 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: whitespace cleanup

PR: 205707
Submitted by: Dmitry Wagin


# 362e958e 03-Apr-2018 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: allow .bdf characters less than full height

Sponsored by: The FreeBSD Foundation


# 9b61efcc 14-Sep-2016 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: remove superfluous newlines in errx messages


# 0f2d5632 15-Mar-2016 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: support .hex fonts with characters beyond the Unicode BMP

This is already supported by the vt(4) vfnt format mapping from code
points to glyphs. Update the .hex font parser to accept up to six hex
digits.


# a1f0b4cf 31-Aug-2015 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: fix buffer overflow for non-default size .hex fonts

Sponsored by: The FreeBSD Foundation


# 2e268aa9 31-Aug-2015 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: introduce xmalloc to abort on out-of-memory

Sponsored by: The FreeBSD Foundation


# e867fb05 14-May-2015 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: Allow 6 digits in verbose output

Some fonts (e.g. GNU Unifont) have more than 100,000 (half-)glyphs.

Sponsored by: The FreeBSD Foundation


# 0dfe37f8 21-Jul-2014 Ed Maste <emaste@FreeBSD.org>

Remove redundant return statement after errx

MFC after: 3 days
Sponsored by: The FreeBSD Foundation


# 54a7138b 21-Jul-2014 Ed Maste <emaste@FreeBSD.org>

Use the standard way of printing the usage string

Sponsored by: The FreeBSD Foundation


# 634ad025 02-Jul-2014 Ed Maste <emaste@FreeBSD.org>

vtfontcvt: correct width calculation (.hex files and commandline)

MFC after: 1 week
Sponsored by: The FreeBSD Foundation


# efc81e89 11-Jun-2014 Ed Maste <emaste@FreeBSD.org>

Avoid leaking file pointer on error

CID: 1222506, 1222505


# b410b62c 10-Jun-2014 Ed Maste <emaste@FreeBSD.org>

vt fontcvt: move to usr.bin/vtfontcvt

vtfontcvt is useful for end users to convert arbitrary bitmap fonts
for use by vt(4). It can also be used as a build tool, allowing us
to keep the source font data in the src tree rather than uuencoded
binaries.

Reviewed by: ray, wblock (D183)
Sponsored by: The FreeBSD Foundation