diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-03-28 20:29:16 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-03-28 20:29:38 +0100 |
| commit | fcc66b0fa04b25b206e702110ed652fd4c113823 (patch) | |
| tree | 0ea6fca5769e5fd14ce199eaf2b37bfe7cab2ce6 /lib/bootnet.h | |
| parent | 154b4163d7c19aa86d3e47a78de9111d37f7f307 (diff) | |
fw: replace netboot with bootnet.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'lib/bootnet.h')
| -rw-r--r-- | lib/bootnet.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/bootnet.h b/lib/bootnet.h new file mode 100644 index 0000000..3ce6763 --- /dev/null +++ b/lib/bootnet.h @@ -0,0 +1,30 @@ +/* ------------------------------------------- + + Copyright (C) 2025, Amlal EL Mahrouss, all rights reserved. + +------------------------------------------- */ + +#pragma once + +#include <lib/boot.h> + +#define BOOTNET_INET_MAGIC "NETB" +#define BOOTNET_INET_MAGIC_LEN 4 + +/// @brief Netboot Internet Header +/// Consists of 4 magic characters, and a set of fields describing the current patch that's being sent (if m_preflight = 0) +/// @note Can be used to patch ROMs too (if m_implies_rom = 1) +typedef struct bootnet_inet_header +{ + char m_nb1; /// magic char 1 'N' + char m_nb2; /// magic char 2 'E' + char m_nb3; /// magic char 3 'T' + char m_nb4; /// magic char 4 'B' + + char m_patch_name[255]; /// example: ColdChoco + int32_t m_length; /// The patch's length. + char m_target[255]; /// The target file. + uint8_t m_implies_rom; /// does it imply an EEPROM program? + uint8_t m_preflight; /// Do we just check if this endpoint exists/is valid? + uint8_t m_blob[]; +} bootnet_inet_header; |
