![]() |
yumapro
25.10-1
YumaPro SDK
|
Server sessions are allocated in order connect request received. More...

Functions | |
| status_t | agt_ses_init (void) |
| INIT 1: Initialize the session manager module data structures. More... | |
| void | agt_ses_cleanup (void) |
| Cleanup the session manager module data structures. More... | |
| ses_cb_t * | agt_ses_new_dummy_session (void) |
| Create a dummy session control block. More... | |
| status_t | agt_ses_set_dummy_session_acm (ses_cb_t *dummy_session, ses_id_t use_sid) |
| Set the session ID and username of the user that will be responsible for the rollback if needed. More... | |
| status_t | agt_ses_set_dummy_session_tcb (ses_cb_t *dummy_session, ses_id_t use_sid) |
| Set the session TCB if needed. More... | |
| void | agt_ses_free_dummy_session (ses_cb_t *scb) |
| Free a dummy session control block. More... | |
| ses_cb_t * | agt_ses_new_coap_session (void) |
| Create a dummy CoAP session control block. More... | |
| void | agt_ses_free_coap_session (ses_cb_t *scb) |
| Free a dummy CoAP session control block. More... | |
| ses_cb_t * | agt_ses_new_snmp_session (void) |
| Create a dummy SNMP session control block. More... | |
| void | agt_ses_free_snmp_session (ses_cb_t *scb) |
| Free a dummy snmp session control block. More... | |
| ses_cb_t * | agt_ses_new_session (ses_transport_t transport, int fd) |
| Create a real server session control block. More... | |
| ses_cb_t * | agt_ses_new_session_tls (ses_transport_t transport, int fd, const char *client_addr) |
| Create a real agent session control block for TLS. More... | |
| void | agt_ses_free_session (ses_cb_t *scb) |
| Free a real session control block. More... | |
| void | agt_ses_free_session2 (ses_cb_t *scb, boolean clear_locks) |
| Free a real session control block but with optional unlocking. More... | |
| boolean | agt_ses_session_id_valid (ses_id_t sid) |
| Check if a session-id is for an active session. More... | |
| boolean | agt_ses_request_close (ses_cb_t *scb, ses_id_t killedby, ses_term_reason_t termreason) |
| Start the close of the specified session. More... | |
| void | agt_ses_thread_kill_session (ses_cb_t *scb, ses_id_t killedby, ses_term_reason_t termreason) |
| Kill the specified session; called from session thread. More... | |
| void | agt_ses_kill_session (ses_cb_t *scb, ses_id_t killedby, ses_term_reason_t termreason) |
| Kill the specified session. More... | |
| boolean | agt_ses_process_first_ready_by_sid (ses_id_t sid) |
| Check the readyQ and process the first message matching session, if any. More... | |
| boolean | agt_ses_process_first_ready (boolean ycontrol) |
| Check the readyQ and process the first message, if any. More... | |
| void | agt_ses_check_timeouts (ses_id_t sid) |
| Check if any sessions need to be dropped because they have been idle too long. More... | |
| boolean | agt_ses_ssh_port_allowed (uint16 port) |
| Check if the port number used for SSH connect is okay. More... | |
| void | agt_ses_fill_writeset (fd_set *fdset, int *maxfdnum) |
| Drain the ses_msg outreadyQ and set the specified fdset Used by agt_ncxserver write_fd_set. More... | |
| status_t | agt_ses_get_inSessions (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the inSessions counter More... | |
| status_t | agt_ses_get_inBadHellos (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the inBadHellos counter More... | |
| status_t | agt_ses_get_inRpcs (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the inRpcs counter More... | |
| status_t | agt_ses_get_inBadRpcs (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the inBadRpcs counter More... | |
| status_t | agt_ses_get_outRpcErrors (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the outRpcErrors counter More... | |
| status_t | agt_ses_get_outNotifications (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the outNotifications counter More... | |
| status_t | agt_ses_get_droppedSessions (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the droppedSessions counter More... | |
| status_t | agt_ses_get_session_inRpcs (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the session/inRpcs counter More... | |
| status_t | agt_ses_get_session_inBadRpcs (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the inBadRpcs counter More... | |
| status_t | agt_ses_get_session_outRpcErrors (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the outRpcErrors counter More... | |
| status_t | agt_ses_get_session_outNotifications (ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval) |
| <get> operation handler for the outNotifications counter More... | |
| ses_cb_t * | agt_ses_get_session_for_id (ses_id_t sid) |
| get the session for the supplied sid More... | |
| uint32 | agt_ses_mgmt_session_count (void) |
| Get number of management sessions open. More... | |
| void | agt_ses_go_active (void) |
| Activate MGMT sessions because YP-HA mode is active. More... | |
| void | agt_ses_go_standby (void) |
| Deactivate MGMT sessions because YP-HA mode is standby. More... | |
| void | agt_ses_remove_subsys (ses_id_t sid) |
| Remove a subsystem session for an HA Standby. More... | |
| boolean | agt_ses_max_cli_sessions (void) |
| Check if max-cli-sessions parameter has been reached. More... | |
| boolean | agt_ses_max_user_sessions (const xmlChar *user) |
| Check if max-user-sessions parameter has been reached. More... | |
| void | agt_ses_set_max_sessions (uint16 val) |
| Set the max-sessions parameter. More... | |
| void | agt_ses_set_max_cli_sessions (uint16 val) |
| Set the max-cli-sessions parameter. More... | |
| void | agt_ses_set_max_user_sessions (uint16 val) |
| Set the max-user-sessions parameter. More... | |
| void | agt_ses_set_hello_timeout (uint32 val) |
| Set the hello-timeout parameter. More... | |
| void | agt_ses_set_idle_timeout (uint32 val) |
| Set the idle-timeout parameter. More... | |
Server sessions are allocated in order connect request received.
A ses_cb_t is created using NCX session support in ses.c. Session IO and connection state is held in this control block.
| void agt_ses_check_timeouts | ( | ses_id_t | sid | ) |
Check if any sessions need to be dropped because they have been idle too long.
| sid | session ID to check |


| void agt_ses_cleanup | ( | void | ) |
Cleanup the session manager module data structures.
Called by the server during shutdown.

| void agt_ses_fill_writeset | ( | fd_set * | fdset, |
| int * | maxfdnum | ||
| ) |
Drain the ses_msg outreadyQ and set the specified fdset Used by agt_ncxserver write_fd_set.
| [out] | fdset | pointer to fd_set to fill *fdset is updated in |
| [out] | maxfdnum | pointer to max fd int to fill in *maxfdnum may be updated |


| void agt_ses_free_coap_session | ( | ses_cb_t * | scb | ) |
Free a dummy CoAP session control block.
| scb | session control block to free |


| void agt_ses_free_dummy_session | ( | ses_cb_t * | scb | ) |
Free a dummy session control block.
| scb | session control block to free |


| void agt_ses_free_session | ( | ses_cb_t * | scb | ) |
Free a real session control block.
| scb | session control block to free |


| void agt_ses_free_session2 | ( | ses_cb_t * | scb, |
| boolean | clear_locks | ||
| ) |
Free a real session control block but with optional unlocking.
| scb | session control block to free |
| clear_locks | TRUE if need to release locks FALSE; otherwise. Only For THREADED version |


| void agt_ses_free_snmp_session | ( | ses_cb_t * | scb | ) |
Free a dummy snmp session control block.
| scb | session control block to free |


| status_t agt_ses_get_droppedSessions | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the droppedSessions counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_inBadHellos | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the inBadHellos counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_inBadRpcs | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the inBadRpcs counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_inRpcs | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the inRpcs counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_inSessions | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the inSessions counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_outNotifications | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the outNotifications counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_outRpcErrors | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the outRpcErrors counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
get the session for the supplied sid
| sid | the id of the session to get |

| status_t agt_ses_get_session_inBadRpcs | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the inBadRpcs counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_session_inRpcs | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the session/inRpcs counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_session_outNotifications | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the outNotifications counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| status_t agt_ses_get_session_outRpcErrors | ( | ses_cb_t * | scb, |
| getcb_mode_t | cbmode, | ||
| const val_value_t * | virval, | ||
| val_value_t * | dstval | ||
| ) |
<get> operation handler for the outRpcErrors counter
| scb | session that issued the get (may be NULL) can be used for access control purposes | |
| cbmode | reason for the callback | |
| virval | place-holder node in the data model for this virtual value node | |
| [out] | dstval | pointer to value output struct *dstval should be filled in, depending on the callback reason |
| void agt_ses_go_active | ( | void | ) |
Activate MGMT sessions because YP-HA mode is active.
Enabled if –ha-enabled=true
| void agt_ses_go_standby | ( | void | ) |
Deactivate MGMT sessions because YP-HA mode is standby.
Enabled if –ha-enabled=true


| status_t agt_ses_init | ( | void | ) |
INIT 1: Initialize the session manager module data structures.


| void agt_ses_kill_session | ( | ses_cb_t * | scb, |
| ses_id_t | killedby, | ||
| ses_term_reason_t | termreason | ||
| ) |
Kill the specified session.
| scb | the session to close |
| killedby | session ID executing the kill-session or close-session |
| termreason | termination reason code |


| boolean agt_ses_max_cli_sessions | ( | void | ) |
Check if max-cli-sessions parameter has been reached.


| boolean agt_ses_max_user_sessions | ( | const xmlChar * | user | ) |
Check if max-user-sessions parameter has been reached.
| user | username to check limit for |


| uint32 agt_ses_mgmt_session_count | ( | void | ) |
Get number of management sessions open.
| ses_cb_t * agt_ses_new_coap_session | ( | void | ) |
Create a dummy CoAP session control block.


| ses_cb_t * agt_ses_new_dummy_session | ( | void | ) |
Create a dummy session control block.


| ses_cb_t * agt_ses_new_session | ( | ses_transport_t | transport, |
| int | fd | ||
| ) |
Create a real server session control block.
| transport | the transport type |
| fd | file descriptor number to use for IO |

| ses_cb_t * agt_ses_new_session_tls | ( | ses_transport_t | transport, |
| int | fd, | ||
| const char * | client_addr | ||
| ) |
Create a real agent session control block for TLS.
WILL CLOSE fd IF SOME ERROR AND NULL IS RETURNED Assumes netconf-tls protocol!
| transport | the transport type |
| fd | file descriptor number to use for IO |
| client_addr | client address converted to string |


| ses_cb_t * agt_ses_new_snmp_session | ( | void | ) |
Create a dummy SNMP session control block.


| boolean agt_ses_process_first_ready | ( | boolean | ycontrol | ) |
Check the readyQ and process the first message, if any.
| ycontrol | TRUE if only YControl sessions should be processed FALSE to process any session type |


| boolean agt_ses_process_first_ready_by_sid | ( | ses_id_t | sid | ) |
Check the readyQ and process the first message matching session, if any.
| sid | session ID to process |

| void agt_ses_remove_subsys | ( | ses_id_t | sid | ) |
Remove a subsystem session for an HA Standby.
Enabled if –ha-enabled=true
| sid | session ID of the subsystem session to remove and close |

| boolean agt_ses_request_close | ( | ses_cb_t * | scb, |
| ses_id_t | killedby, | ||
| ses_term_reason_t | termreason | ||
| ) |
Start the close of the specified session.
| scb | the session to close |
| killedby | session ID executing the kill-session or close-session |
| termreason | termination reason code |


| boolean agt_ses_session_id_valid | ( | ses_id_t | sid | ) |
Check if a session-id is for an active session.
| sid | session ID to check |
Set the session ID and username of the user that will be responsible for the rollback if needed.
| dummy_session | session control block to change |
| use_sid | Session ID to use for the rollback |


Set the session TCB if needed.
Must call agt_ses_new_dummy_session first
| dummy_session | session control block to change |
| use_sid | Session ID to use for the rollback |


| void agt_ses_set_hello_timeout | ( | uint32 | val | ) |
Set the hello-timeout parameter.
| val | value to use |

| void agt_ses_set_idle_timeout | ( | uint32 | val | ) |
Set the idle-timeout parameter.
| val | value to use |

| void agt_ses_set_max_cli_sessions | ( | uint16 | val | ) |
Set the max-cli-sessions parameter.
| val | value to use |

| void agt_ses_set_max_sessions | ( | uint16 | val | ) |
Set the max-sessions parameter.
| val | value to use |

| void agt_ses_set_max_user_sessions | ( | uint16 | val | ) |
Set the max-user-sessions parameter.
| val | value to use |

| boolean agt_ses_ssh_port_allowed | ( | uint16 | port | ) |
Check if the port number used for SSH connect is okay.
| port | port number to check |


| void agt_ses_thread_kill_session | ( | ses_cb_t * | scb, |
| ses_id_t | killedby, | ||
| ses_term_reason_t | termreason | ||
| ) |
Kill the specified session; called from session thread.
| scb | session control block |
| killedby | session ID executing the kill-session or close-session |
| termreason | termination reason code |
