1 #ifndef _IPXE_DHCPOPTS_H
2 #define _IPXE_DHCPOPTS_H
10 FILE_LICENCE ( GPL2_OR_LATER );
14 /** A DHCP options block */
16 /** Option block raw data */
18 /** Option block used length */
20 /** Option block allocated length */
22 /** Reallocate option block raw data
24 * @v options DHCP option block
26 * @ret rc Return status code
28 int ( * realloc ) ( struct dhcp_options *options, size_t len );
31 extern int dhcpopt_applies ( unsigned int tag );
32 extern int dhcpopt_store ( struct dhcp_options *options, unsigned int tag,
33 const void *data, size_t len );
34 extern int dhcpopt_fetch ( struct dhcp_options *options, unsigned int tag,
35 void *data, size_t len );
36 extern void dhcpopt_init ( struct dhcp_options *options,
37 void *data, size_t alloc_len,
38 int ( * realloc ) ( struct dhcp_options *options,
40 extern void dhcpopt_update_used_len ( struct dhcp_options *options );
41 extern int dhcpopt_no_realloc ( struct dhcp_options *options, size_t len );
43 #endif /* _IPXE_DHCPOPTS_H */