Lines Matching defs:pOptions
48 int HasInitialized(PDhcpOptionList pOptions)
50 if (!pOptions) {
54 if (pOptions->first != nullptr) {
60 int InitOptionList(PDhcpOptionList pOptions)
63 if (!pOptions) {
66 if (pOptions->first != nullptr && pOptions->first == pOptions->last) {
77 pOptions->size = 0;
78 pOptions->first = pOptions->last = pNode;
79 pOptions->first->previous = nullptr;
80 pOptions->last->next = nullptr;
85 int PushBackOption(PDhcpOptionList pOptions, PDhcpOption pOption)
87 if (!pOptions) {
95 if (pOptions->first == nullptr) {
104 pNode->previous = pOptions->last;
105 pOptions->last->next = pNode;
106 pOptions->last = pNode;
107 pOptions->size++;
112 int PushFrontOption(PDhcpOptionList pOptions, PDhcpOption pOption)
114 if (!pOptions) {
127 if (pOptions->first == pOptions->last) {
128 pNode->previous = pOptions->first;
129 pOptions->first->next = pNode;
130 pOptions->last = pNode;
132 pNode->next = pOptions->first->next;
134 pNode->previous = pOptions->first;
135 pOptions->first->next = pNode;
137 pOptions->size++;
142 int RemoveOption(PDhcpOptionList pOptions, uint8_t code)
144 if (pOptions == nullptr) {
147 if (pOptions->size == 0) {
150 DhcpOptionNode *pNode = GetOptionNode(pOptions, code);
154 if (pNode == pOptions->last) {
155 pOptions->last = pNode->previous;
156 pOptions->last->next = nullptr;
161 pOptions->size--;
167 PDhcpOptionNode GetOptionNode(PDhcpOptionList pOptions, uint8_t code)
169 if (pOptions->first == nullptr) {
172 PDhcpOptionNode pNode = pOptions->first->next;
179 PDhcpOption GetOption(PDhcpOptionList pOptions, uint8_t code)
181 PDhcpOptionNode pNode = GetOptionNode(pOptions, code);
188 void ClearOptions(PDhcpOptionList pOptions)
190 if (pOptions == nullptr || pOptions->size == 0) {
193 DhcpOptionNode *pNode = pOptions->first->next;
195 if (pNode == pOptions->last) {
196 pOptions->last = pOptions->first;
197 pOptions->last->next = nullptr;
203 pNode = pOptions->first->next;
205 pNode = pOptions->first;
206 pOptions->size = 0;
207 pOptions->first = pOptions->last = pNode;
208 pOptions->first->previous = nullptr;
209 pOptions->last->next = nullptr;
212 void FreeOptionList(PDhcpOptionList pOptions)
214 if (pOptions == nullptr) {
217 if (pOptions->first == nullptr) {
220 DhcpOptionNode *pNode = pOptions->first->next;
222 if (pNode == pOptions->last) {
223 pOptions->last = pOptions->first;
224 pOptions->last->next = nullptr;
230 pNode = pOptions->first->next;
232 pOptions->size = 0;
233 free(pOptions->first);
234 pOptions->first = pOptions->last = nullptr;