@@ -62,6 +62,18 @@ typedef struct bbr_route_info {
6262 uint8_t parent [8 ];
6363} bbr_route_info_t ;
6464
65+ /**
66+ * \brief Struct bbr_radius_timing_t is RADIUS timing configuration structure.
67+ */
68+ typedef struct bbr_radius_timing {
69+ /** RADIUS retry timer Imin; in 100ms units; range 1-1200; default 20 (2 seconds) */
70+ uint16_t radius_retry_imin ;
71+ /** RADIUS retry timer Imax; in 100ms units; range 1-1200; default 30 (3 seconds) */
72+ uint16_t radius_retry_imax ;
73+ /** RADIUS retry count; default 3 */
74+ uint8_t radius_retry_count ;
75+ } bbr_radius_timing_t ;
76+
6577/**
6678 * Start backbone border router service.
6779 *
@@ -394,7 +406,9 @@ int ws_bbr_radius_address_get(int8_t interface_id, uint8_t *address);
394406 *
395407 * Function sets RADIUS shared secret to Border Router. Shared secret may be an
396408 * ASCII string. Check the format and length constraints for the shared secret from
397- * the documentation of RADIUS server you are connecting to.
409+ * the documentation of RADIUS server you are connecting to. Nanostack will not
410+ * make copy of the shared secret, therefore address and data must remain permanently
411+ * valid.
398412 *
399413 * \param interface_id Network interface ID.
400414 * \param shared_secret_len The length of the shared secret in bytes.
@@ -409,7 +423,7 @@ int ws_bbr_radius_shared_secret_set(int8_t interface_id, const uint16_t shared_s
409423/**
410424 * Get RADIUS shared secret
411425 *
412- * Function gets RADIUS shared secret to Border Router.
426+ * Function gets RADIUS shared secret from Border Router.
413427 *
414428 * \param interface_id Network interface ID.
415429 * \param shared_secret_len On function call, is the size of the shared secret write buffer in bytes, on return is the shared secret length in bytes.
@@ -421,6 +435,48 @@ int ws_bbr_radius_shared_secret_set(int8_t interface_id, const uint16_t shared_s
421435 */
422436int ws_bbr_radius_shared_secret_get (int8_t interface_id , uint16_t * shared_secret_len , uint8_t * shared_secret );
423437
438+ /**
439+ * Set RADIUS timing information
440+ *
441+ * Function sets RADIUS timing information to Border Router.
442+ *
443+ * \param interface_id Network interface ID.
444+ * \param timing Timing information
445+ *
446+ * \return < 0 failure
447+ * \return >= 0 success
448+ *
449+ */
450+ int ws_bbr_radius_timing_set (int8_t interface_id , bbr_radius_timing_t * timing );
451+
452+ /**
453+ * Get RADIUS timing information
454+ *
455+ * Function sets RADIUS timing information from Border Router.
456+ *
457+ * \param interface_id Network interface ID.
458+ * \param timing Timing information
459+ *
460+ * \return < 0 failure
461+ * \return >= 0 success
462+ *
463+ */
464+ int ws_bbr_radius_timing_get (int8_t interface_id , bbr_radius_timing_t * timing );
465+
466+ /**
467+ * Validate RADIUS timing information
468+ *
469+ * Function validates RADIUS timing information.
470+ *
471+ * \param interface_id Network interface ID.
472+ * \param timing Timing information
473+ *
474+ * \return < 0 failure
475+ * \return >= 0 success
476+ *
477+ */
478+ int ws_bbr_radius_timing_validate (int8_t interface_id , bbr_radius_timing_t * timing );
479+
424480/**
425481 * \brief A function to set DNS query results to border router
426482 *
0 commit comments