Commit graph

6 commits

Author SHA1 Message Date
Warner Losh bc4c7e78f8 ofwdump: Convert ints that are booleans to bool.
No functional changes...

Sponsored by:		Netflix
2024-02-26 16:15:55 -07:00
Warner Losh 1d386b48a5 Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
2023-08-16 11:54:42 -06:00
Brandon Bergren 26869ad14c [PowerPC] Allow traversal of oversize OF properties.
In standards such as LoPAPR, property names in excess of the usual 31
characters exist.

This breaks property traversal.

While in IEEE 1275-1994, nextprop is defined explicitly to work with a
32-byte region of memory, using a larger buffer should be fine. There is
actually no way to pass a buffer length to the nextprop call in the OF
client interface, so SLOF actually just blindly overflows the buffer.

So we have to defensively make the buffer larger, to avoid memory
corruption when reading out long properties on live OF systems.

Note also that on real-mode OF, things are pretty tight because we are
allocating against a static bounce buffer in low memory, so we can't just
use a huge buffer to work around this without it being wasteful of our
limited amount of 32-bit physical memory.

This allows a patched ofwdump to operate properly on SLOF (i.e. pseries)
systems, as well as any other PowerPC systems with overlength properties.

Reviewed by:	jhibbits
MFC after:	2 weeks
Sponsored by:	Tag1 Consulting, Inc.
Differential Revision:	https://reviews.freebsd.org/D26669
2020-11-13 16:49:41 +00:00
Nathan Whitehorn 622d02fb21 Instead of iterating through all properties looking for a match, if asked
for a specific property, look it up directly.

MFC after:	1 week
2015-01-16 18:42:49 +00:00
Marius Strobl 8cc2c16287 - Change ofwdump(8) to use sysexits(3) exit codes.
- Make the code use the new OFIOCMAXVALUE instead of defining the maximum
  length of property values locally.
- Move the application specific parts from ofw_util.c to ofwdump.c in
  order to make ofw_util.c more library-like. While ofw_dump_properties()
  could be made non-specific to ofwdump(8) it's currently optimized for
  use in ofwdump(8) and making it a library-like function would just
  complicate the code unnecessarily.
- Minor clean-up in ofw_util.c, e.g. make its use of getopt(3) the way
  it's described in style(9), make its usage() static, etc.
- Add a comment in ofw_util.c about why it doesn't call usage() when
  neither the "-a" option nor a node-name where given.
- Add ofw_optnode() and ofw_setprop(), helper functions for the
  OFIOCGETOPTNODE and OFIOCSET ioctls respectively, to ofw_util.[c,h].
- Be consistent with the use of 'const' in ofw_util.[c,h] and add 'const'
  to the function arguments that are acutally const but weren't declared
  as such.
- Mark WARNS=6 clean.

Approved by:	tmm
2004-05-22 16:51:11 +00:00
Thomas Moestl 1b6eef5b4e Add a utility to examine the OpenFirmware device tree (on sparc64). This
allows access to detailed machine configuration information, and should
be especially useful to gather information for driver-related bug
reports.
2002-10-18 15:37:15 +00:00