Harald Welte
7b907ec4d4
use more dynamically-allocated structures as opposed to stack-allocated
2010-07-19 22:05:40 +02:00
Harald Welte
ed59503766
link existing (incomplete) TC-U-ABORT.req code to TC-User API
2010-07-19 19:59:29 +02:00
Harald Welte
802d8ca108
use the existing TC-UNI.req support
2010-07-19 19:56:39 +02:00
Harald Welte
e7c849d4f0
implement TC-U-CANCEL.req
2010-07-19 19:54:16 +02:00
Harald Welte
fead1fffd4
implement TC-U-REJECT.req
2010-07-19 19:46:11 +02:00
Harald Welte
d5c4b8ef20
Implement TC-U-ERROR.req primitive
2010-07-19 19:21:16 +02:00
Harald Welte
57058f3600
Don't use stack-based libasn1c objects for component primitives
...
In order for the recursive free-ing of libasn1c data structures to
work, we cannot have some of them stack-allocated.
2010-07-19 18:33:53 +02:00
Harald Welte
a7c47009c9
Make TC-user signalling of TC-RESULT-{L,NL} work
2010-07-19 16:29:51 +02:00
Harald Welte
a764e40c80
bring libosm-tcap more in line with libasn1c's use of talloc
...
libasn1c expects all data structures to be heap-allocated, whereas
we used to allocate some of them on the stack, which causes problems
at free() time.
As a side-effect, we had to remove the 'struct tcap_component' and
replace its list_head in tcap_dialogue with a 'struct ComponentPortion'
2010-07-19 15:09:23 +02:00
Harald Welte
5a7afc24a7
switch to new 'pass by value' at the TCAP-User boundary
...
this will enable the TCAP-User to queue primitives at will, since they
don't hold references to any data inside the TCAP-layer
2010-07-18 23:39:22 +02:00
Harald Welte
c671dff577
'struct tcap_component' is allocated off the dialogue, not the invocation
2010-07-18 23:38:50 +02:00
Harald Welte
2ede379bb9
Makefile.am: Properly use autoconf-determined libosmo-asn1-tcap ldflags
2010-07-18 23:19:00 +02:00
Harald Welte
b618623844
Add AGPLv3 headers and copyright statements to all files
2010-07-18 17:17:17 +02:00
Harald Welte
c9a0de8589
Add GNU AGPLv3 as license for this project
2010-07-18 17:10:22 +02:00
Harald Welte
b37ec74502
fix compiler warnings
2010-07-18 10:12:32 +02:00
Harald Welte
c36a54d063
hide all internal symbols of the library using -fvisibility=hidden
2010-07-18 01:46:34 +02:00
Harald Welte
6d68a0e5e2
fix syntax error to make autoreconf happy
2010-07-18 01:46:21 +02:00
Harald Welte
c29cc7c826
tcap_test: enable talloc report on exit
2010-07-18 01:25:32 +02:00
Harald Welte
2b0e73f42a
release incoming UDP msgb's after we processed them
2010-07-18 01:24:08 +02:00
Harald Welte
2631e7adcd
release all formerly-pending tcap_components after sending them
2010-07-18 01:23:49 +02:00
Harald Welte
d62e881f9d
properly free parsed asn.1 structure before N-UNITDATA.ind completes
2010-07-18 01:13:31 +02:00
Harald Welte
6a06c081cd
Fix encoding of DialoguePortion of TC-CONTINUE and TC-END
2010-07-18 01:09:24 +02:00
Harald Welte
1e2f04410b
implement simplistic UDP transport for TCAP
...
Normally, TCAP is not spoken directly on top of UDP, however this
makes it really easy to test...
2010-07-17 21:43:00 +02:00
Harald Welte
aa3011d53e
L/R-REJECT primitives are component primitives and thus have invocation as argument
2010-07-17 20:32:50 +02:00
Harald Welte
fc9cc76f02
There is no 'struct OBJECT_IDENTIFIER', only OBJECT_IDENTIFIER_t
2010-07-17 20:30:21 +02:00
Harald Welte
52cef61627
export tacp_transport_entity to tcap_user.h
2010-07-17 20:29:49 +02:00
Harald Welte
ab5bc475af
rename scxp_entity into tcap_transport_entity
2010-07-17 20:25:03 +02:00
Harald Welte
a5937f28d9
Enable TC-END.req from user/application
2010-07-17 19:32:40 +02:00
Harald Welte
a64f6ccfff
introduce tacp_trans_set_state() as wrapper to set transaction state
2010-07-17 19:11:48 +02:00
Harald Welte
5e130bfada
tcap_test: continue the dialogue after TC-BEGIN.ind
2010-07-17 19:11:24 +02:00
Harald Welte
551e5f157a
add support for TC-CONTINUE.req
2010-07-17 18:50:03 +02:00
Harald Welte
848f9a6a17
use functions to print human-readable state names in error messages
2010-07-17 18:49:41 +02:00
Harald Welte
b6ac5eb1fe
add functions to print human-readable state names
2010-07-17 18:49:24 +02:00
Harald Welte
363796ba5b
properly parse applcation context name and user infromation in dialogue part
2010-07-17 16:48:01 +02:00
Harald Welte
fa1cd47182
TC-BEGIN.ind correctly parse the dialogue portion
2010-07-17 15:25:36 +02:00
Harald Welte
7648b13cab
DHA: Make sure components are always passed to CHA
2010-07-17 13:23:10 +02:00
Harald Welte
bd68522f48
start to use tcap_dialg_free() when apropriate
2010-07-17 13:17:09 +02:00
Harald Welte
6e04ae709d
introduce tcap_dialg_free() to release a dialogue/transaction
2010-07-17 13:16:53 +02:00
Harald Welte
de50c68e02
actually use tcap_ism_free() instead of manual free()ing
2010-07-17 13:16:24 +02:00
Harald Welte
5327d82de8
Fix TC-UNI.req construction
2010-07-17 13:08:39 +02:00
Harald Welte
0b555a70c7
Move from one component per invocation to a per-dialogue component list
2010-07-17 13:05:56 +02:00
Harald Welte
b03abafcc4
implement support for TC-UNI.req
2010-07-17 00:09:53 +02:00
Harald Welte
ebe4d4bb33
add application context name to the tcap_test program
2010-07-16 23:56:43 +02:00
Harald Welte
5da2445ca3
make sure we properly zero-initialize structures on the stack
2010-07-16 23:56:24 +02:00
Harald Welte
08dd39cca7
feed outgoing TCAP transactions back into the stack for Tx->Rx testing
2010-07-16 21:52:18 +02:00
Harald Welte
5822e12ab4
Print incoming N-UNITDATA.req
2010-07-16 21:52:03 +02:00
Harald Welte
b37f3921b5
use ANY_fromBuf() instead of manual assignment
2010-07-16 21:51:19 +02:00
Harald Welte
9553cac8d2
tcap_test: Use properly encoded BER data for Invoke parameter
2010-07-16 21:49:55 +02:00
Harald Welte
b8455bbb10
initialize TCMessage to NULL
2010-07-16 20:44:16 +02:00
Harald Welte
c6d0b9f52a
forward-declare scxp_entity
2010-07-16 20:43:57 +02:00