RMP(4) | Device Drivers Manual (hp300) | RMP(4) |
rmp
— HP Remote
Maintenance Protocol Family
options RMP
#include <sys/types.h>
#include <sys/socket.h>
#include <netrmp/rmp.h>
#include
<netrmp/rmp_var.h>
int
socket
(AF_RMP,
SOCK_RAW,
proto);
Hewlett-Packard's Remote Maintenance Protocol family is a
collection of protocols layered atop IEEE 802.3. The current implementation
of the RMP family provides protocol support only for the
SOCK_RAW
socket type. As a result,
sendto(2) and
recvfrom(2) must be used
to send and receive RMP packets.
The format of an RMP packet is defined in the include file
<netrmp/rmp_var.h>
. The RMP
packet arrives encapsulated in an (HP extended) IEEE 802.2 packet. The IEEE
802.2 packet is preceded by the kernel address of an ifnet
struct which is used to `route' a packet out the same interface it
arrived on. Outgoing packets are encapsulated in a standard IEEE 802.3
packet, while incoming packets have this information stripped away.
RMP (IEEE 802.3) addresses are 6 octets in length (48 bytes). Sockets in the Remote Maintenance Protocol family use the following addressing structure:
struct sockaddr_rmp { short srmp_family; u_char srmp_dhost[6]; };
The RMP protocol family supported by the operating system
currently consists of the Boot Protocol
(proto=RMPPROTO_BOOT
).
Unfortunately, we have no documentation on the Remote Maintenance Protocol
and only sketchy information about the Boot Protocol.
bind(2), recvfrom(2), sendto(2), socket(2), hp300/intro(4), rbootd(8)
Stuart Sechrest, An Introductory 4.4BSD Interprocess Communication Tutorial. (see /usr/share/doc/reference/ref3/sockets)
Samuel J. Leffler, Robert S. Fabry, William N. Joy, Phil Lapsley, Steve Miller, and Chris Torek, Advanced 4.4BSD IPC Tutorial. (see /usr/share/doc/reference/ref3/sockets-advanced)
The rmp
protocol interface currently under
development.
RMPADDR_ANY
should be provided to prevent more than one
rbootd(8) server from
running at the same time.June 28, 2022 | NetBSD 10.99 |