The rendered graphs are not guaranteed at all to reflect what the code actually does.

These graphs are rendered by fsm-to-dot.py, let loose on all .c files found in the osmocom core network and BSS repositories.

To detect state transitions and so fort, fsm-to-dot.py uses highly speculative regex evaluation depending on coding style. So it's just a hack to help getting an overview of what might be happening, so that you can more easily pinpoint places in the code to go and look at what it is actually doing.


meta.dot.png



a_reset.c_fsm_A-RESET.dot.png



abis_om2000.c_om2k_bts_fsm_OM2000-BTS.dot.png



abis_om2000.c_om2k_mo_fsm_OM2000-MO.dot.png



abis_om2000.c_om2k_trx_fsm_OM2000-TRX.dot.png



bsc_subscr_conn_fsm.c_gscon_fsm_SUBSCR_CONN.dot.png



dtx_dl_amr_fsm.c_dtx_dl_amr_fsm_DTX_DL_AMR_FSM.dot.png



fsm_test.c_fsm_Test_FSM.dot.png



mgcp_client_fsm.c_fsm_mgcp_client_MGCP_CONN.dot.png



msc_mgcp.c_fsm_msc_mgcp_MGW.dot.png



sccp_scoc.c_sccp_scoc_fsm_SCCP-SCOC.dot.png



subscr_conn.c_subscr_conn_fsm_Subscr_Conn.dot.png



vlr_access_req_fsm.c_proc_arq_vlr_fsm_Process_Access_Request_VLR.dot.png



vlr_access_req_fsm.c_upd_loc_child_vlr_fsm_Update_Location_Child_VLR.dot.png



vlr_auth_fsm.c_vlr_auth_fsm_VLR_Authenticate.dot.png



vlr_lu_fsm.c_lu_compl_vlr_fsm_lu_compl_vlr_fsm.dot.png



vlr_lu_fsm.c_sub_pres_vlr_fsm_sub_pres_vlr_fsm.dot.png



vlr_lu_fsm.c_upd_hlr_vlr_fsm_upd_hlr_vlr_fsm.dot.png



vlr_lu_fsm.c_vlr_lu_fsm_vlr_lu_fsm.dot.png



xua_as_fsm.c_xua_as_fsm_XUA_AS.dot.png



xua_asp_fsm.c_ipa_asp_fsm_IPA_ASP.dot.png



xua_asp_fsm.c_xua_asp_fsm_XUA_ASP.dot.png



xua_default_lm_fsm.c_xua_default_lm_fsm_xua_default_lm.dot.png



^_^