ieee8021_pae_mib_module.c
Go to the documentation of this file.
1 /**
2  * @file ieee8021_pae_mib_module.c
3  * @brief Port Access Control MIB module
4  *
5  * @section License
6  *
7  * SPDX-License-Identifier: GPL-2.0-or-later
8  *
9  * Copyright (C) 2022-2024 Oryx Embedded SARL. All rights reserved.
10  *
11  * This file is part of CycloneEAP Open.
12  *
13  * This program is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU General Public License
15  * as published by the Free Software Foundation; either version 2
16  * of the License, or (at your option) any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * You should have received a copy of the GNU General Public License
24  * along with this program; if not, write to the Free Software Foundation,
25  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
26  *
27  * @author Oryx Embedded SARL (www.oryx-embedded.com)
28  * @version 2.4.4
29  **/
30 
31 //Switch to the appropriate trace level
32 #define TRACE_LEVEL SNMP_TRACE_LEVEL
33 
34 //Dependencies
35 #include "core/net.h"
36 #include "mibs/mib_common.h"
41 #include "core/crypto.h"
42 #include "encoding/asn1.h"
43 #include "encoding/oid.h"
44 #include "debug.h"
45 
46 //Check TCP/IP stack configuration
47 #if (IEEE8021_PAE_MIB_SUPPORT == ENABLED)
48 
49 
50 /**
51  * @brief Port Access Control MIB base
52  **/
53 
55 
56 
57 /**
58  * @brief Port Access Control MIB objects
59  **/
60 
62 {
63  //dot1xPaeSystemAuthControl object (1.0.8802.1.1.1.1.1.1)
64  {
65  "dot1xPaeSystemAuthControl",
66  {40, 196, 98, 1, 1, 1, 1, 1, 1},
67  9,
71  NULL,
72  NULL,
73  sizeof(int32_t),
76  NULL
77  },
78  //dot1xPaePortProtocolVersion object (1.0.8802.1.1.1.1.1.2.1.2)
79  {
80  "dot1xPaePortProtocolVersion",
81  {40, 196, 98, 1, 1, 1, 1, 1, 2, 1, 2},
82  11,
86  NULL,
87  NULL,
88  sizeof(uint32_t),
89  NULL,
92  },
93  //dot1xPaePortCapabilities object (1.0.8802.1.1.1.1.1.2.1.3)
94  {
95  "dot1xPaePortCapabilities",
96  {40, 196, 98, 1, 1, 1, 1, 1, 2, 1, 3},
97  11,
101  NULL,
102  NULL,
103  0,
104  NULL,
107  },
108  //dot1xPaePortInitialize object (1.0.8802.1.1.1.1.1.2.1.4)
109  {
110  "dot1xPaePortInitialize",
111  {40, 196, 98, 1, 1, 1, 1, 1, 2, 1, 4},
112  11,
116  NULL,
117  NULL,
118  sizeof(int32_t),
122  },
123  //dot1xPaePortReauthenticate object (1.0.8802.1.1.1.1.1.2.1.5)
124  {
125  "dot1xPaePortReauthenticate",
126  {40, 196, 98, 1, 1, 1, 1, 1, 2, 1, 5},
127  11,
131  NULL,
132  NULL,
133  sizeof(int32_t),
137  },
138 #if (AUTHENTICATOR_SUPPORT == ENABLED)
139  //dot1xAuthPaeState object (1.0.8802.1.1.1.1.2.1.1.1)
140  {
141  "dot1xAuthPaeState",
142  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 1},
143  11,
147  NULL,
148  NULL,
149  sizeof(int32_t),
150  NULL,
153  },
154  //dot1xAuthBackendAuthState object (1.0.8802.1.1.1.1.2.1.1.2)
155  {
156  "dot1xAuthBackendAuthState",
157  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 2},
158  11,
162  NULL,
163  NULL,
164  sizeof(int32_t),
165  NULL,
168  },
169  //dot1xAuthAdminControlledDirections object (1.0.8802.1.1.1.1.2.1.1.3)
170  {
171  "dot1xAuthAdminControlledDirections",
172  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 3},
173  11,
177  NULL,
178  NULL,
179  sizeof(int32_t),
183  },
184  //dot1xAuthOperControlledDirections object (1.0.8802.1.1.1.1.2.1.1.4)
185  {
186  "dot1xAuthOperControlledDirections",
187  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 4},
188  11,
192  NULL,
193  NULL,
194  sizeof(int32_t),
195  NULL,
198  },
199  //dot1xAuthAuthControlledPortStatus object (1.0.8802.1.1.1.1.2.1.1.5)
200  {
201  "dot1xAuthAuthControlledPortStatus",
202  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 5},
203  11,
207  NULL,
208  NULL,
209  sizeof(int32_t),
210  NULL,
213  },
214  //dot1xAuthAuthControlledPortControl object (1.0.8802.1.1.1.1.2.1.1.6)
215  {
216  "dot1xAuthAuthControlledPortControl",
217  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 6},
218  11,
222  NULL,
223  NULL,
224  sizeof(int32_t),
228  },
229  //dot1xAuthQuietPeriod object (1.0.8802.1.1.1.1.2.1.1.7)
230  {
231  "dot1xAuthQuietPeriod",
232  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 7},
233  11,
237  NULL,
238  NULL,
239  sizeof(uint32_t),
243  },
244  //dot1xAuthServerTimeout object (1.0.8802.1.1.1.1.2.1.1.10)
245  {
246  "dot1xAuthServerTimeout",
247  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 10},
248  11,
252  NULL,
253  NULL,
254  sizeof(uint32_t),
258  },
259  //dot1xAuthReAuthPeriod object (1.0.8802.1.1.1.1.2.1.1.12)
260  {
261  "dot1xAuthReAuthPeriod",
262  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 12},
263  11,
267  NULL,
268  NULL,
269  sizeof(uint32_t),
273  },
274  //dot1xAuthReAuthEnabled object (1.0.8802.1.1.1.1.2.1.1.13)
275  {
276  "dot1xAuthReAuthEnabled",
277  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 13},
278  11,
282  NULL,
283  NULL,
284  sizeof(int32_t),
288  },
289  //dot1xAuthKeyTxEnabled object (1.0.8802.1.1.1.1.2.1.1.14)
290  {
291  "dot1xAuthKeyTxEnabled",
292  {40, 196, 98, 1, 1, 1, 1, 2, 1, 1, 14},
293  11,
297  NULL,
298  NULL,
299  sizeof(int32_t),
303  },
304  //dot1xAuthEapolFramesRx object (1.0.8802.1.1.1.1.2.2.1.1)
305  {
306  "dot1xAuthEapolFramesRx",
307  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 1},
308  11,
312  NULL,
313  NULL,
314  sizeof(uint32_t),
315  NULL,
318  },
319  //dot1xAuthEapolFramesTx object (1.0.8802.1.1.1.1.2.2.1.2)
320  {
321  "dot1xAuthEapolFramesTx",
322  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 2},
323  11,
327  NULL,
328  NULL,
329  sizeof(uint32_t),
330  NULL,
333  },
334  //dot1xAuthEapolStartFramesRx object (1.0.8802.1.1.1.1.2.2.1.3)
335  {
336  "dot1xAuthEapolStartFramesRx",
337  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 3},
338  11,
342  NULL,
343  NULL,
344  sizeof(uint32_t),
345  NULL,
348  },
349  //dot1xAuthEapolLogoffFramesRx object (1.0.8802.1.1.1.1.2.2.1.4)
350  {
351  "dot1xAuthEapolLogoffFramesRx",
352  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 4},
353  11,
357  NULL,
358  NULL,
359  sizeof(uint32_t),
360  NULL,
363  },
364  //dot1xAuthEapolRespIdFramesRx object (1.0.8802.1.1.1.1.2.2.1.5)
365  {
366  "dot1xAuthEapolRespIdFramesRx",
367  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 5},
368  11,
372  NULL,
373  NULL,
374  sizeof(uint32_t),
375  NULL,
378  },
379  //dot1xAuthEapolRespFramesRx object (1.0.8802.1.1.1.1.2.2.1.6)
380  {
381  "dot1xAuthEapolRespFramesRx",
382  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 6},
383  11,
387  NULL,
388  NULL,
389  sizeof(uint32_t),
390  NULL,
393  },
394  //dot1xAuthEapolReqIdFramesTx object (1.0.8802.1.1.1.1.2.2.1.7)
395  {
396  "dot1xAuthEapolReqIdFramesTx",
397  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 7},
398  11,
402  NULL,
403  NULL,
404  sizeof(uint32_t),
405  NULL,
408  },
409  //dot1xAuthEapolReqFramesTx object (1.0.8802.1.1.1.1.2.2.1.8)
410  {
411  "dot1xAuthEapolReqFramesTx",
412  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 8},
413  11,
417  NULL,
418  NULL,
419  sizeof(uint32_t),
420  NULL,
423  },
424  //dot1xAuthInvalidEapolFramesRx object (1.0.8802.1.1.1.1.2.2.1.9)
425  {
426  "dot1xAuthInvalidEapolFramesRx",
427  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 9},
428  11,
432  NULL,
433  NULL,
434  sizeof(uint32_t),
435  NULL,
438  },
439  //dot1xAuthEapLengthErrorFramesRx object (1.0.8802.1.1.1.1.2.2.1.10)
440  {
441  "dot1xAuthEapLengthErrorFramesRx",
442  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 10},
443  11,
447  NULL,
448  NULL,
449  sizeof(uint32_t),
450  NULL,
453  },
454  //dot1xAuthLastEapolFrameVersion object (1.0.8802.1.1.1.1.2.2.1.11)
455  {
456  "dot1xAuthLastEapolFrameVersion",
457  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 11},
458  11,
462  NULL,
463  NULL,
464  sizeof(uint32_t),
465  NULL,
468  },
469  //dot1xAuthLastEapolFrameSource object (1.0.8802.1.1.1.1.2.2.1.12)
470  {
471  "dot1xAuthLastEapolFrameSource",
472  {40, 196, 98, 1, 1, 1, 1, 2, 2, 1, 12},
473  11,
477  NULL,
478  NULL,
479  0,
480  NULL,
483  },
484  //dot1xAuthSessionOctetsRx object (1.0.8802.1.1.1.1.2.4.1.1)
485  {
486  "dot1xAuthSessionOctetsRx",
487  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 1},
488  11,
492  NULL,
493  NULL,
494  sizeof(uint64_t),
495  NULL,
498  },
499  //dot1xAuthSessionOctetsTx object (1.0.8802.1.1.1.1.2.4.1.2)
500  {
501  "dot1xAuthSessionOctetsTx",
502  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 2},
503  11,
507  NULL,
508  NULL,
509  sizeof(uint64_t),
510  NULL,
513  },
514  //dot1xAuthSessionFramesRx object (1.0.8802.1.1.1.1.2.4.1.3)
515  {
516  "dot1xAuthSessionFramesRx",
517  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 3},
518  11,
522  NULL,
523  NULL,
524  sizeof(uint32_t),
525  NULL,
528  },
529  //dot1xAuthSessionFramesTx object (1.0.8802.1.1.1.1.2.4.1.4)
530  {
531  "dot1xAuthSessionFramesTx",
532  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 4},
533  11,
537  NULL,
538  NULL,
539  sizeof(uint32_t),
540  NULL,
543  },
544  //dot1xAuthSessionId object (1.0.8802.1.1.1.1.2.4.1.5)
545  {
546  "dot1xAuthSessionId",
547  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 5},
548  11,
552  NULL,
553  NULL,
554  0,
555  NULL,
558  },
559  //dot1xAuthSessionAuthenticMethod object (1.0.8802.1.1.1.1.2.4.1.6)
560  {
561  "dot1xAuthSessionAuthenticMethod",
562  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 6},
563  11,
567  NULL,
568  NULL,
569  sizeof(int32_t),
570  NULL,
573  },
574  //dot1xAuthSessionTime object (1.0.8802.1.1.1.1.2.4.1.7)
575  {
576  "dot1xAuthSessionTime",
577  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 7},
578  11,
582  NULL,
583  NULL,
584  sizeof(uint32_t),
585  NULL,
588  },
589  //dot1xAuthSessionTerminateCause object (1.0.8802.1.1.1.1.2.4.1.8)
590  {
591  "dot1xAuthSessionTerminateCause",
592  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 8},
593  11,
597  NULL,
598  NULL,
599  sizeof(int32_t),
600  NULL,
603  },
604  //dot1xAuthSessionUserName object (1.0.8802.1.1.1.1.2.4.1.9)
605  {
606  "dot1xAuthSessionUserName",
607  {40, 196, 98, 1, 1, 1, 1, 2, 4, 1, 9},
608  11,
612  NULL,
613  NULL,
614  0,
615  NULL,
618  },
619 #endif
620 #if 0
621  //dot1xSuppPaeState object (1.0.8802.1.1.1.1.3.1.1.1)
622  {
623  "dot1xSuppPaeState",
624  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 1},
625  11,
629  NULL,
630  NULL,
631  sizeof(int32_t),
632  NULL,
633  ieee8021PaeMibGetDot1xSuppConfigEntry,
634  ieee8021PaeMibGetNextDot1xSuppConfigEntry
635  },
636  //dot1xSuppHeldPeriod object (1.0.8802.1.1.1.1.3.1.1.2)
637  {
638  "dot1xSuppHeldPeriod",
639  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 2},
640  11,
644  NULL,
645  NULL,
646  sizeof(uint32_t),
647  ieee8021PaeMibSetDot1xSuppConfigEntry,
648  ieee8021PaeMibGetDot1xSuppConfigEntry,
649  ieee8021PaeMibGetNextDot1xSuppConfigEntry
650  },
651  //dot1xSuppAuthPeriod object (1.0.8802.1.1.1.1.3.1.1.3)
652  {
653  "dot1xSuppAuthPeriod",
654  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 3},
655  11,
659  NULL,
660  NULL,
661  sizeof(uint32_t),
662  ieee8021PaeMibSetDot1xSuppConfigEntry,
663  ieee8021PaeMibGetDot1xSuppConfigEntry,
664  ieee8021PaeMibGetNextDot1xSuppConfigEntry
665  },
666  //dot1xSuppStartPeriod object (1.0.8802.1.1.1.1.3.1.1.4)
667  {
668  "dot1xSuppStartPeriod",
669  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 4},
670  11,
674  NULL,
675  NULL,
676  sizeof(uint32_t),
677  ieee8021PaeMibSetDot1xSuppConfigEntry,
678  ieee8021PaeMibGetDot1xSuppConfigEntry,
679  ieee8021PaeMibGetNextDot1xSuppConfigEntry
680  },
681  //dot1xSuppMaxStart object (1.0.8802.1.1.1.1.3.1.1.5)
682  {
683  "dot1xSuppMaxStart",
684  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 5},
685  11,
689  NULL,
690  NULL,
691  sizeof(uint32_t),
692  ieee8021PaeMibSetDot1xSuppConfigEntry,
693  ieee8021PaeMibGetDot1xSuppConfigEntry,
694  ieee8021PaeMibGetNextDot1xSuppConfigEntry
695  },
696  //dot1xSuppControlledPortStatus object (1.0.8802.1.1.1.1.3.1.1.6)
697  {
698  "dot1xSuppControlledPortStatus",
699  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 6},
700  11,
704  NULL,
705  NULL,
706  sizeof(int32_t),
707  NULL,
708  ieee8021PaeMibGetDot1xSuppConfigEntry,
709  ieee8021PaeMibGetNextDot1xSuppConfigEntry
710  },
711  //dot1xSuppAccessCtrlWithAuth object (1.0.8802.1.1.1.1.3.1.1.7)
712  {
713  "dot1xSuppAccessCtrlWithAuth",
714  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 7},
715  11,
719  NULL,
720  NULL,
721  sizeof(int32_t),
722  ieee8021PaeMibSetDot1xSuppConfigEntry,
723  ieee8021PaeMibGetDot1xSuppConfigEntry,
724  ieee8021PaeMibGetNextDot1xSuppConfigEntry
725  },
726  //dot1xSuppBackendState object (1.0.8802.1.1.1.1.3.1.1.8)
727  {
728  "dot1xSuppBackendState",
729  {40, 196, 98, 1, 1, 1, 1, 3, 1, 1, 8},
730  11,
734  NULL,
735  NULL,
736  sizeof(int32_t),
737  NULL,
738  ieee8021PaeMibGetDot1xSuppConfigEntry,
739  ieee8021PaeMibGetNextDot1xSuppConfigEntry
740  },
741  //dot1xSuppEapolFramesRx object (1.0.8802.1.1.1.1.3.2.1.1)
742  {
743  "dot1xSuppEapolFramesRx",
744  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 1},
745  11,
749  NULL,
750  NULL,
751  sizeof(uint32_t),
752  NULL,
753  ieee8021PaeMibGetDot1xSuppStatsEntry,
754  ieee8021PaeMibGetNextDot1xSuppStatsEntry
755  },
756  //dot1xSuppEapolFramesTx object (1.0.8802.1.1.1.1.3.2.1.2)
757  {
758  "dot1xSuppEapolFramesTx",
759  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 2},
760  11,
764  NULL,
765  NULL,
766  sizeof(uint32_t),
767  NULL,
768  ieee8021PaeMibGetDot1xSuppStatsEntry,
769  ieee8021PaeMibGetNextDot1xSuppStatsEntry
770  },
771  //dot1xSuppEapolStartFramesTx object (1.0.8802.1.1.1.1.3.2.1.3)
772  {
773  "dot1xSuppEapolStartFramesTx",
774  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 3},
775  11,
779  NULL,
780  NULL,
781  sizeof(uint32_t),
782  NULL,
783  ieee8021PaeMibGetDot1xSuppStatsEntry,
784  ieee8021PaeMibGetNextDot1xSuppStatsEntry
785  },
786  //dot1xSuppEapolLogoffFramesTx object (1.0.8802.1.1.1.1.3.2.1.4)
787  {
788  "dot1xSuppEapolLogoffFramesTx",
789  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 4},
790  11,
794  NULL,
795  NULL,
796  sizeof(uint32_t),
797  NULL,
798  ieee8021PaeMibGetDot1xSuppStatsEntry,
799  ieee8021PaeMibGetNextDot1xSuppStatsEntry
800  },
801  //dot1xSuppInvalidEapolFramesRx object (1.0.8802.1.1.1.1.3.2.1.9)
802  {
803  "dot1xSuppInvalidEapolFramesRx",
804  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 9},
805  11,
809  NULL,
810  NULL,
811  sizeof(uint32_t),
812  NULL,
813  ieee8021PaeMibGetDot1xSuppStatsEntry,
814  ieee8021PaeMibGetNextDot1xSuppStatsEntry
815  },
816  //dot1xSuppEapLengthErrorFramesRx object (1.0.8802.1.1.1.1.3.2.1.10)
817  {
818  "dot1xSuppEapLengthErrorFramesRx",
819  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 10},
820  11,
824  NULL,
825  NULL,
826  sizeof(uint32_t),
827  NULL,
828  ieee8021PaeMibGetDot1xSuppStatsEntry,
829  ieee8021PaeMibGetNextDot1xSuppStatsEntry
830  },
831  //dot1xSuppLastEapolFrameVersion object (1.0.8802.1.1.1.1.3.2.1.11)
832  {
833  "dot1xSuppLastEapolFrameVersion",
834  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 11},
835  11,
839  NULL,
840  NULL,
841  sizeof(uint32_t),
842  NULL,
843  ieee8021PaeMibGetDot1xSuppStatsEntry,
844  ieee8021PaeMibGetNextDot1xSuppStatsEntry
845  },
846  //dot1xSuppLastEapolFrameSource object (1.0.8802.1.1.1.1.3.2.1.12)
847  {
848  "dot1xSuppLastEapolFrameSource",
849  {40, 196, 98, 1, 1, 1, 1, 3, 2, 1, 12},
850  11,
854  NULL,
855  NULL,
856  0,
857  NULL,
858  ieee8021PaeMibGetDot1xSuppStatsEntry,
859  ieee8021PaeMibGetNextDot1xSuppStatsEntry
860  }
861 #endif
862 };
863 
864 
865 /**
866  * @brief Port Access Control MIB module
867  **/
868 
870 {
871  "IEEE8021-PAE-MIB",
872  {40, 196, 98, 1, 1, 1},
873  6,
877  NULL,
878  NULL,
881 };
882 
883 #endif
Port Access Control MIB module implementation.
error_t ieee8021PaeMibGetDot1xAuthConfigEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
Get dot1xAuthConfigEntry object value.
error_t ieee8021PaeMibGetNextDot1xAuthStatsEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
Get next dot1xAuthStatsEntry object.
OID (Object Identifier)
void ieee8021PaeMibLock(void)
Lock Port Access Control MIB base.
error_t ieee8021PaeMibGetNextDot1xAuthConfigEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
Get next dot1xAuthConfigEntry object.
@ MIB_ACCESS_READ_ONLY
Definition: mib_common.h:79
error_t ieee8021PaeMibGetDot1xAuthSessionStatsEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
Get dot1xAuthSessionStatsEntry object value.
@ MIB_ACCESS_READ_WRITE
Definition: mib_common.h:80
@ MIB_TYPE_COUNTER32
Definition: mib_common.h:61
Ieee8021PaeMibBase ieee8021PaeMibBase
Port Access Control MIB base.
#define ASN1_CLASS_UNIVERSAL
Definition: asn1.h:52
error_t ieee8021PaeMibSetDot1xPaePortEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
Set dot1xPaePortEntry object value.
error_t ieee8021PaeMibGetDot1xPaeSystemAuthControl(const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
Get dot1xPaeSystemAuthControl object value.
General definitions for cryptographic algorithms.
@ MIB_TYPE_UNSIGNED32
Definition: mib_common.h:63
const MibModule ieee8021PaeMibModule
Port Access Control MIB module.
void ieee8021PaeMibUnlock(void)
Unlock Port Access Control MIB base.
MIB module.
Definition: mib_common.h:292
error_t ieee8021PaeMibGetNextDot1xAuthSessionStatsEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
Get next dot1xAuthSessionStatsEntry object.
error_t ieee8021PaeMibGetDot1xAuthStatsEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
Get dot1xAuthStatsEntry object value.
error_t ieee8021PaeMibSetDot1xAuthConfigEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
Set dot1xAuthConfigEntry object value.
error_t ieee8021PaeMibInit(void)
Port Access Control MIB module initialization.
@ ASN1_TYPE_OCTET_STRING
Definition: asn1.h:72
@ ASN1_TYPE_INTEGER
Definition: asn1.h:70
@ MIB_TYPE_TIME_TICKS
Definition: mib_common.h:64
Common definitions for MIB modules.
error_t ieee8021PaeMibGetNextDot1xPaePortEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
Get next dot1xPaePortEntry object.
error_t ieee8021PaeMibGetDot1xPaePortEntry(const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
Get dot1xPaePortEntry object value.
#define MibObject
Definition: mib_common.h:46
Port Access Control MIB base.
error_t ieee8021PaeMibSetDot1xPaeSystemAuthControl(const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
Set dot1xPaeSystemAuthControl object value.
const MibObject ieee8021PaeMibObjects[]
Port Access Control MIB objects.
@ MIB_TYPE_COUNTER64
Definition: mib_common.h:66
TCP/IP stack core.
#define ASN1_CLASS_APPLICATION
Definition: asn1.h:53
Port Access Control MIB module.
Debugging facilities.
ASN.1 (Abstract Syntax Notation One)
#define arraysize(a)
Definition: os_port.h:71