GNU ZRTP for pjproject

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 06.12.2010 17:53, schrieb Werner Dittmann:
> Hi all,
> 
> Am 06.12.2010 04:20, schrieb Benny Prijono:
>> On Sun, Dec 5, 2010 at 5:49 PM, Werner Dittmann

--- SNI - SNAP

> 
> My goal was to make the use of transport_zrtp as simple as possible
> and let pjsib users "feel home" when they enable transport_zrtp.
> IMHO at the pjsip related ZRTP stuff could go to the third_party
> structure because it needs pjsip include files etc. Having it in
> third_party enables a separate download of the files. Only topic
> would be: how to integrate in pjsip build system efficiently without
> putting too much burden on the developer.
> 

I have moved the ZRTP/SRTP files in the third_party structure
thus no more files in the pjmedia core distribution. The structure
is:

$PJBASE/third_party/build/zsrtp  - Makefile to build the stuff
$PJBASE/third_party/zsrtp        - include, src, ... files

These directories can be provided as a separate download/tar file.
The zsrtp Makefile builds the library and copies it to third_party/lib
as usual.

To simplify usage of transport_zrtp for an application the zsrtp
Makefile creates a build.mak file in $PJBASE/third_party/build/zsrtp
that an application Makefile can include.
For example:


#Modify this to point to the PJSIP location.
PJBASE=/home/werner/devhome/pjproject-1.8.5

include $(PJBASE)/build.mak
include $(PJBASE)/third_party/build/zsrtp/build.mak

CC      = $(PJ_CC)
LDFLAGS = $(PJ_LDFLAGS)
LDLIBS  = $(PJ_LDLIBS)
CFLAGS  = $(PJ_CFLAGS)
CPPFLAGS= ${CFLAGS}

# If your application is in a file named myapp.cpp or myapp.c
# this is the line you will need to build the binary.
all: pjapp.c

pjapp: pjapp.c
	$(CC) -o $@ $< \
	$(CPPFLAGS) \
	$(LDFLAGS) \
	$(LDLIBS)

clean:
	rm -f pjapp.o pjapp

the zsrtp/build.mak extends some $(PJ_*) variables to include the zsrtp
include path and the library.

Regis, would this fit into your Android build structure?

Only topic to solve: enable an application to tell pjsua to use the
transport_zrtp :-) .

Regards,
Werner



>>
>> I understand that you need a new callback in pjsua, we could add a
>> generic facility for app to attach media transport adapters to pjsua
>> call.
> 
> An idea could be:
> - application creates transport_zrtp and initializes ZRTP. This transport
>   is ready to go
> - new "pjsua_add_transport(call_id, transport_zrtp, position)". This call
>   should add the transport to an existing transport chain at the given
>   position (for example: position 0 is lowest transport, e.g. transport_udp,
>   1 is one above, etc and maybe -1 means "on top of existin chain).
> 
>   When to call such a function? Or would it make sense to set the transport
>   to add as a field in pjsua media config and hand it over during initialization?
> 
> Ideas are welcome :-)
> 
> Regards,
> Werner
> 
>>
>>  -Benny
>>
>> _______________________________________________
>> Visit our blog: http://blog.pjsip.org
>>
>> pjsip mailing list
>> pjsip at lists.pjsip.org
>> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>
> 
> 
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
> 
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
> 




[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux