Changeset 624:a5682d003ed9 in freeDiameter for doc/dbg_interactive.py.sample
- Timestamp:
- Dec 9, 2010, 5:14:24 PM (13 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/dbg_interactive.py.sample
r623 r624 30 30 31 31 # Print messages to freeDiameter's debug facility 32 fd_log_debug("3 + 4 = %d\n" , 7)33 # Hum... Currently I get "3 + 4 = 0" output... need some fix...32 fd_log_debug("3 + 4 = %d\n" % (7)) 33 # See SWIG documentation about varargs functions for more information 34 34 35 35 … … 42 42 # foo_a_get(s) --> returns s->a value 43 43 # delete_foo(s) --> free(s) 44 # 45 # In addition, thanks to proxy (aka shadow) class, we can also do: 46 # s = foo() 47 # s.a = 2 48 # s.a 49 # del s 44 50 45 51 … … 63 69 peer_info_config_pic_flags_pro4_set(mypicflag, 1) # 1 for TCP 64 70 fd_peer_add(mypeer, "python", None, None) 71 delete_peer_info(mypeer) 65 72 66 73 … … 78 85 # Dictionary 79 86 gdict = fd_config_cnf_dict_get(cvar.fd_g_config) 87 80 88 id = new_int_ptr() 81 89 int_ptr_assign(id, 3) 82 res = new_dict_object_ptr() 83 err = fd_dict_search ( gdict, DICT_APPLICATION, APPLICATION_BY_ID, id, res, -1 ) 84 obj = dict_object_ptr_value(res) 90 pobj = new_dict_object_pptr() 91 fd_dict_search ( gdict, DICT_APPLICATION, APPLICATION_BY_ID, id, pobj, -1 ) 92 delete_int_ptr(id) 93 obj = dict_object_pptr_value(pobj) 94 delete_dict_object_pptr(pobj) 85 95 t = new_dict_object_type_ptr() 86 err =fd_dict_gettype(obj, t)96 fd_dict_gettype(obj, t) 87 97 dict_object_type_ptr_dump(t) 88 v = new_dict_application_data() 89 err = fd_dict_getval(obj, v) 90 dict_application_data_application_name_get(v) 98 delete_dict_object_type_ptr(t) 99 objdata = new_dict_application_data() 100 fd_dict_getval(obj, objdata) 101 dict_application_data_application_name_get(objdata) 102 delete_dict_application_data(objdata) 103 104 vd = new_dict_vendor_data() 105 dict_vendor_data_vendor_id_set(vd, 123) 106 dict_vendor_data_vendor_name_set(vd, "my test vendor") 107 pobj = new_dict_object_pptr() 108 fd_dict_new ( gdict, DICT_VENDOR, vd, None, pobj) 109 delete_dict_vendor_data(vd) 110 obj = dict_object_pptr_value(pobj) 111 delete_dict_object_pptr(pobj) 112 fd_dict_dump_object(obj) 91 113 92 114 115 # Sessions 116 pmyhdl = new_session_handler_pptr() 117 fd_sess_handler_create_internal(pmyhdl, None) 118 ### Have to work on this one, a cleanup handler is actually required. 119 ### How to define the handler in python ? 120 myhdl = session_handler_pptr_value(pmyhdl) 121 delete_session_handler_pptr(pmyhdl) 93 122 123 psess = new_session_pptr() 124 fd_sess_new (psess, fd_config_cnf_diamid_get(cvar.fd_g_config), "dbg_interactive", 0) 125 sess = session_pptr_value(psess) 126 fd_sess_dump(0, sess) 127 fd_sess_destroy(psess) 128 delete_session_pptr(psess) 129 130 131 # Routing data 132 prtd = new_rt_data_pptr() 133 fd_rtd_init(prtd) 134 fd_rtd_candidate_add(rt_data_pptr_value(prtd), "p1.testbed.aaa", "testbed.aaa") 135 fd_rtd_candidate_add(rt_data_pptr_value(prtd), "p2.testbed.aaa", "testbed.aaa") 136 fd_rtd_candidate_add(rt_data_pptr_value(prtd), "p3.testbed.aaa", "testbed.aaa") 137 fd_rtd_candidate_del(rt_data_pptr_value(prtd), "p2.testbed.aaa", 0) 138 pcands = new_fd_list_pptr() 139 fd_rtd_candidate_extract(rt_data_pptr_value(prtd), pcands, 0) 140 li = fd_list_pptr_value(pcands) 141 li = fd_list_next_get(li) 142 c = fd_list_to_rtd_candidate(li) 143 rtd_candidate_diamid_get(c) 144 li = fd_list_next_get(li) 145 c = fd_list_to_rtd_candidate(li) 146 rtd_candidate_diamid_get(c) 147 148 149 # Messages 150 gdict = fd_config_cnf_dict_get(cvar.fd_g_config) 151 pobj = new_dict_object_pptr() 152 fd_dict_search ( gdict, DICT_COMMAND, CMD_BY_NAME, char_to_void("Capabilities-Exchange-Request"), pobj, -1 ) 153 cerdict = dict_object_pptr_value(pobj) 154 fd_dict_search ( gdict, DICT_AVP, AVP_BY_NAME, char_to_void("Origin-Host"), pobj, -1 ) 155 ohdict = dict_object_pptr_value(pobj) 156 delete_dict_object_pptr(pobj) 157 158 pmsg = new_msg_pptr() 159 fd_msg_new(cerdict, MSGFL_ALLOC_ETEID, pmsg) 160 msg = msg_pptr_value(pmsg); 161 pavp = new_avp_pptr() 162 fd_msg_avp_new(ohdict, 0, pavp) 163 avp = avp_pptr_value(pavp); 164 fd_msg_avp_add(msg, MSG_BRW_FIRST_CHILD, avp) 165 fd_msg_dump_walk(0, msg) 166 167 pahdr = new_avp_hdr_pptr() 168 fd_msg_avp_hdr(avp, pahdr) 169 ahdr = avp_hdr_pptr_value(pahdr) 170 delete_avp_hdr_pptr(pahdr) 171 avp_hdr_avp_code_get(ahdr) 172 os = new_avp_value_os() 173 avp_value_os_fromstr(os, fd_config_cnf_diamid_get(cvar.fd_g_config)) 174 val = new_avp_value() 175 avp_value_os_set(val, os) 176 delete_avp_value_os(os) 177 fd_msg_avp_setvalue(avp, val) 178 delete_avp_value(val) 179 180 r,buf = fd_msg_bufferize_py(msg) 181 fd_msg_free(msg) 182 delete_avp_pptr(pavp) 183
Note: See TracChangeset
for help on using the changeset viewer.