Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.9.0.2
openapi_dhcp_server.h
Go to the documentation of this file.
1 
9 /*********************************************************************
10 *
11 * Copyright 2018-2020 Broadcom.
12 *
13 * Licensed under the Apache License, Version 2.0 (the "License");
14 * you may not use this file except in compliance with the License.
15 * You may obtain a copy of the License at
16 *
17 * http://www.apache.org/licenses/LICENSE-2.0
18 *
19 * Unless required by applicable law or agreed to in writing, software
20 * distributed under the License is distributed on an "AS IS" BASIS,
21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 * See the License for the specific language governing permissions and
23 * limitations under the License.
24 *
25 **********************************************************************
26 *
27 * @filename openapi_dhcp_server.h
28 *
29 * @purpose DHCP Server API
30 *
31 * @component OpEN
32 *
33 * @note This code must not include any ICOS header files.
34 *
35 * @create 7/6/2018
36 *
37 * @end
38 *
39 **********************************************************************/
40 #ifndef OPENAPI_DHCP_SERVER_H_INCLUDED
41 #define OPENAPI_DHCP_SERVER_H_INCLUDED
42 
43 #include "openapi_common.h"
44 
46 typedef enum
47 {
52 
54 typedef enum
55 {
62 
63 #define OPEN_DHCP_SERVER_POOL_NAME_MAXLEN 32
64 #define OPEN_DHCP_SERVER_CLIENT_ID_MAXLEN 256
65 #define OPEN_DHCP_SERVER_POOL_VRF_NAME_MAXLEN 65
68 typedef struct
69 {
70  char name[OPEN_DHCP_SERVER_POOL_NAME_MAXLEN];
72 
74 typedef struct
75 {
76  char name[OPEN_DHCP_SERVER_POOL_VRF_NAME_MAXLEN];
78 
79 
81 typedef struct
82 {
83  char clientid[OPEN_DHCP_SERVER_CLIENT_ID_MAXLEN];
85 
87 typedef enum
88 {
104 
105 /*****************************************************************/
128  open_inet_addr_t *ipaddr,
129  uint32_t *mask,
130  open_buffdesc *hwaddr,
133  uint32_t *remaining);
134 
135 /*****************************************************************/
151  uint32_t *poolIndex,
152  OPEN_DHCP_SERVER_POOL_NAME_t *poolName);
153 
154 /*****************************************************************/
171  uint32_t *poolIndex,
172  OPEN_DHCP_SERVER_POOL_NAME_t *poolName);
173 
174 
175 /*****************************************************************/
193 
194 
195 /*****************************************************************/
214  uint32_t *leaseIndex,
215  open_inet_addr_t *ipaddr,
217 
218 /*****************************************************************/
238  uint32_t *leaseIndex,
239  open_inet_addr_t *ipaddr,
241 
242 /*****************************************************************/
257  OPEN_DHCPS_STAT_ID_t id, uint32_t *val);
258 
259 /*****************************************************************/
277 
278 /*****************************************************************/
296 
297 /*****************************************************************/
313  OPEN_DHCP_SERVER_POOL_NAME_t *poolName);
314 
315 /*****************************************************************/
334  uint32_t *pRangeIndex,
336  open_inet_addr_t *startIpAddr,
337  open_inet_addr_t *endIpAddr);
338 
339 /*****************************************************************/
359  uint32_t *pRangeIndex,
361  open_inet_addr_t *startIpAddr,
362  open_inet_addr_t *endIpAddr);
363 
364 /*****************************************************************/
382  open_inet_addr_t *lowIpAddr,
383  open_inet_addr_t *highIpAddr);
384 
385 /*****************************************************************/
403  open_inet_addr_t *lowIpAddr,
404  open_inet_addr_t *highIpAddr);
405 
406 /*****************************************************************/
431  open_inet_addr_t *ipaddr,
432  uint32_t *mask,
433  open_buffdesc *hwaddr,
436  uint32_t *remaining);
437 
438 /*****************************************************************/
455  open_inet_addr_t *ipaddr);
456 
457 /*****************************************************************/
474  open_inet_addr_t *ipaddr);
475 
476 /*****************************************************************/
492 
493 /*****************************************************************/
508  OPEN_DHCP_SERVER_POOL_NAME_t *poolName);
509 
510 /*****************************************************************/
524 
525 #endif /* OPENAPI_DHCP_SERVER_H_INCLUDED */
526