[asterisk-commits] pcadach: branch pcadach/chan_h323-live r44045 - in /team/pcadach/chan_h323-li...

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Fri Sep 29 14:19:58 MST 2006


Author: pcadach
Date: Fri Sep 29 16:19:57 2006
New Revision: 44045

URL: http://svn.digium.com/view/asterisk?rev=44045&view=rev
Log:
Merged revisions 44010,44013,44024-44025,44033,44044 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
r44010 | pcadach | 2006-09-30 00:35:44 +0600 (Сбт, 30 Сен 2006) | 9 lines

Merged revisions 44009 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44009 | pcadach | 2006-09-30 00:30:34 +0600 (Сбт, 30 Сен 2006) | 1 line

Pass TON/PRESENTATION information too
........

................
r44013 | kpfleming | 2006-09-30 00:54:21 +0600 (Сбт, 30 Сен 2006) | 30 lines

Merged revisions 43996-43997,44008,44011-44012 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r43996 | kpfleming | 2006-09-29 11:47:05 -0500 (Fri, 29 Sep 2006) | 2 lines

another cross-compile fix

........
r43997 | kpfleming | 2006-09-29 11:52:27 -0500 (Fri, 29 Sep 2006) | 2 lines

support --without-curl in configure script

........
r44008 | kpfleming | 2006-09-29 13:25:49 -0500 (Fri, 29 Sep 2006) | 2 lines

don't abuse CFLAGS and LDFLAGS for build of Asterisk components, because they are also then used for non-Asterisk components (like menuselect); use our own variables instead

........
r44011 | kpfleming | 2006-09-29 13:40:17 -0500 (Fri, 29 Sep 2006) | 2 lines

missed one conversion to ASTCFLAGS

........
r44012 | kpfleming | 2006-09-29 13:49:07 -0500 (Fri, 29 Sep 2006) | 2 lines

yet another place where we were not using the correct CFLAGS by default

........

................
r44024 | pcadach | 2006-09-30 01:13:26 +0600 (Сбт, 30 Сен 2006) | 11 lines

Merged revisions 44022 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44022 | pcadach | 2006-09-30 01:06:55 +0600 (Сбт, 30 Сен 2006) | 3 lines

Properly pass TON/PRESENTATION information - original
H323Connection::SendSignalSetup() destroys Q.931 fields.

........

................
r44025 | pcadach | 2006-09-30 01:16:13 +0600 (Сбт, 30 Сен 2006) | 8 lines

Blocked revisions 44023 via svnmerge

........
r44023 | pcadach | 2006-09-30 01:09:22 +0600 (Сбт, 30 Сен 2006) | 1 line

Ported code refers to H.450 - add includes
........

................
r44033 | tilghman | 2006-09-30 02:16:30 +0600 (Сбт, 30 Сен 2006) | 2 lines

Remove locking conflict

................
r44044 | pcadach | 2006-09-30 03:13:46 +0600 (Сбт, 30 Сен 2006) | 17 lines

Merged revisions 44034,44042-44043 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44034 | pcadach | 2006-09-30 02:43:13 +0600 (Сбт, 30 Сен 2006) | 1 line

Fake display name by called number on incoming calls (until passing connected number/connected name is not implemented)
........
r44042 | pcadach | 2006-09-30 03:05:43 +0600 (Сбт, 30 Сен 2006) | 1 line

Set TON/PRESENTATION information more carefully when no CallingNumber IE available
........
r44043 | pcadach | 2006-09-30 03:09:10 +0600 (Сбт, 30 Сен 2006) | 1 line

Compile first, please
........

................

Modified:
    team/pcadach/chan_h323-live/   (props changed)
    team/pcadach/chan_h323-live/Makefile
    team/pcadach/chan_h323-live/Makefile.moddir_rules
    team/pcadach/chan_h323-live/Makefile.rules
    team/pcadach/chan_h323-live/apps/app_voicemail.c
    team/pcadach/chan_h323-live/channels/Makefile
    team/pcadach/chan_h323-live/channels/chan_h323.c
    team/pcadach/chan_h323-live/channels/h323/ast_h323.cxx
    team/pcadach/chan_h323-live/channels/h323/ast_h323.h
    team/pcadach/chan_h323-live/channels/h323/chan_h323.h
    team/pcadach/chan_h323-live/codecs/Makefile
    team/pcadach/chan_h323-live/codecs/gsm/Makefile
    team/pcadach/chan_h323-live/configure
    team/pcadach/chan_h323-live/configure.ac
    team/pcadach/chan_h323-live/include/asterisk/autoconfig.h.in
    team/pcadach/chan_h323-live/main/Makefile
    team/pcadach/chan_h323-live/main/db1-ast/Makefile
    team/pcadach/chan_h323-live/pbx/Makefile
    team/pcadach/chan_h323-live/utils/Makefile

Propchange: team/pcadach/chan_h323-live/
------------------------------------------------------------------------------
    automerge = *

Propchange: team/pcadach/chan_h323-live/
------------------------------------------------------------------------------
--- branch-1.4-blocked (original)
+++ branch-1.4-blocked Fri Sep 29 16:19:57 2006
@@ -1,1 +1,1 @@
-/branches/1.4:43484,43510,43582,43626,43703,43756
+/branches/1.4:43484,43510,43582,43626,43703,43756,44023

Propchange: team/pcadach/chan_h323-live/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Propchange: team/pcadach/chan_h323-live/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Fri Sep 29 16:19:57 2006
@@ -1,1 +1,1 @@
-/trunk:1-44004
+/trunk:1-44044

Modified: team/pcadach/chan_h323-live/Makefile
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/Makefile?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/Makefile (original)
+++ team/pcadach/chan_h323-live/Makefile Fri Sep 29 16:19:57 2006
@@ -13,14 +13,43 @@
 
 # All Makefiles use the following variables:
 #
-# LDFLAGS - linker flags (not libraries), used for all links
+# ASTCFLAGS - compiler options
+# ASTLDFLAGS - linker flags (not libraries)
 # LIBS - additional libraries, at top-level for all links,
 #      on a single object just for that object
 # SOLINK - linker flags used only for creating shared objects (.so files),
 #      used for all .so links
 #
-
-.EXPORT_ALL_VARIABLES:
+# Default values fo ASTCFLAGS and ASTLDFLAGS can be specified in the
+# environment when running make, as follows:
+#
+# $ ASTCFLAGS="-Werror" make
+
+export ASTTOPDIR
+export ASTERISKVERSION
+export ASTERISKVERSIONNUM
+export INSTALL_PATH
+export ASTETCDIR
+export ASTVARRUNDIR
+export MODULES_DIR
+export ASTSPOOLDIR
+export ASTVARLIBDIR
+export ASTDATADIR
+export ASTLOGDIR
+export AGI_DIR
+export ASTCONFPATH
+export NOISY_BUILD
+export MENUSELECT_CFLAGS
+export CC
+export CXX
+export AR
+export RANLIB
+export HOST_CC
+export STATIC_BUILD
+export INSTALL
+export DESTDIR
+export PROC
+export SOLINK
 
 # even though we could use '-include makeopts' here, use a wildcard
 # lookup anyway, so that make won't try to build makeopts if it doesn't
@@ -92,8 +121,6 @@
 # Determine by a grep 'ScriptAlias' of your Apache httpd.conf file
 HTTP_CGIDIR=/var/www/cgi-bin
 
-ASTCFLAGS=
-
 # Uncomment this to use the older DSP routines
 #ASTCFLAGS+=-DOLD_DSP_ROUTINES
 
@@ -275,10 +302,10 @@
 main: $(filter-out main,$(MOD_SUBDIRS))
 
 $(MOD_SUBDIRS):
-	@CFLAGS="$(MOD_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) --no-print-directory -C $@ SUBDIR=$@ all
+	@ASTCFLAGS="$(MOD_SUBDIR_CFLAGS) $(ASTCFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(MAKE) --no-print-directory -C $@ SUBDIR=$@ all
 
 $(OTHER_SUBDIRS):
-	@CFLAGS="$(OTHER_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) --no-print-directory -C $@ SUBDIR=$@ all
+	@ASTCFLAGS="$(OTHER_SUBDIR_CFLAGS) $(ASTCFLAGS)" ASTLDFLAGS="$(ASTLDFLAGS)" $(MAKE) --no-print-directory -C $@ SUBDIR=$@ all
 
 defaults.h: makeopts
 	@build_tools/make_defaults_h > $@.tmp
@@ -588,10 +615,10 @@
 	fi
 
 $(MOD_SUBDIRS_DEPEND):
-	@CFLAGS="$(MOD_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) --no-print-directory -C $(@:-depend=) depend
+	@ASTCFLAGS="$(MOD_SUBDIR_CFLAGS) $(ASTCFLAGS)" $(MAKE) --no-print-directory -C $(@:-depend=) depend
 
 $(OTHER_SUBDIRS_DEPEND):
-	@CFLAGS="$(OTHER_SUBDIR_CFLAGS)$(ASTCFLAGS)" $(MAKE) --no-print-directory -C $(@:-depend=) depend
+	@ASTCFLAGS="$(OTHER_SUBDIR_CFLAGS) $(ASTCFLAGS)" $(MAKE) --no-print-directory -C $(@:-depend=) depend
 
 depend: include/asterisk/version.h include/asterisk/buildopts.h defaults.h $(SUBDIRS_DEPEND)
 
@@ -646,7 +673,7 @@
 	- at menuselect/menuselect $(GLOBAL_MAKEOPTS) $(USER_MAKEOPTS) menuselect.makeopts && (echo "menuselect changes saved!"; rm -f channels/h323/Makefile.ast main/asterisk) || echo "menuselect changes NOT saved!"
 
 menuselect/menuselect: makeopts menuselect/menuselect.c menuselect/menuselect_curses.c menuselect/menuselect_stub.c menuselect/menuselect.h menuselect/linkedlists.h makeopts
-	@unset CC LD AR RANLIB CFLAGS LDFLAGS && $(MAKE) -C menuselect CONFIGURE_SILENT="--silent"
+	@unset CC LD AR RANLIB && $(MAKE) -C menuselect CONFIGURE_SILENT="--silent"
 
 menuselect-tree: $(foreach dir,$(filter-out main,$(MOD_SUBDIRS)),$(wildcard $(dir)/*.c) $(wildcard $(dir)/*.cc)) build_tools/cflags.xml sounds/sounds.xml build_tools/embed_modules.xml
 	@echo "Generating input for menuselect ..."

Modified: team/pcadach/chan_h323-live/Makefile.moddir_rules
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/Makefile.moddir_rules?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/Makefile.moddir_rules (original)
+++ team/pcadach/chan_h323-live/Makefile.moddir_rules Fri Sep 29 16:19:57 2006
@@ -12,11 +12,11 @@
 #
 
 ifneq ($(findstring MALLOC_DEBUG,$(MENUSELECT_CFLAGS)),)
-  CFLAGS+=-include $(ASTTOPDIR)/include/asterisk/astmm.h
+  ASTCFLAGS+=-include $(ASTTOPDIR)/include/asterisk/astmm.h
 endif
 
 ifeq ($(findstring LOADABLE_MODULES,$(MENUSELECT_CFLAGS)),)
-  CFLAGS+=${GC_CFLAGS}
+  ASTCFLAGS+=${GC_CFLAGS}
 endif
 
 ifneq ($(findstring STATIC_BUILD,$(MENUSELECT_CFLAGS)),)
@@ -29,14 +29,14 @@
 
 define module_o_template
 $(2): $(3)
-$(2): CFLAGS+=-DAST_MODULE=\"$(1)\" $$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE))
+$(2): ASTCFLAGS+=-DAST_MODULE=\"$(1)\" $$(MENUSELECT_OPTS_$(1):%=-D%) $(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_INCLUDE))
 endef
 
 define module_so_template
 $(1)=$(1).so
-$(1).so: CFLAGS+=-fPIC
+$(1).so: ASTCFLAGS+=-fPIC
 $(1).so: LIBS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LIB))
-$(1).so: LDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS))
+$(1).so: ASTLDFLAGS+=$(foreach dep,$(MENUSELECT_DEPENDS_$(1)),$$(value $(dep)_LDFLAGS))
 $(1).so: $(2)
 endef
 
@@ -102,4 +102,4 @@
 depend: .depend
 
 .depend:
-	../build_tools/mkdep $(CFLAGS) `ls *.c *.cc 2> /dev/null`
+	../build_tools/mkdep $(ASTCFLAGS) `ls *.c *.cc 2> /dev/null`

Modified: team/pcadach/chan_h323-live/Makefile.rules
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/Makefile.rules?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/Makefile.rules (original)
+++ team/pcadach/chan_h323-live/Makefile.rules Fri Sep 29 16:19:57 2006
@@ -33,19 +33,19 @@
 #K6OPT=-DK6OPT
 
 OPTIMIZE?=-O6
-CFLAGS+=$(OPTIMIZE)
+ASTCFLAGS+=$(OPTIMIZE)
 endif
 
 define ast_make_o_c
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [CC] $$< -> $$@"
-	$(CMD_PREFIX) $$(CC) -o $$@ -c $$< $$(CFLAGS)
+	$(CMD_PREFIX) $$(CC) -o $$@ -c $$< $$(ASTCFLAGS)
 endef
 
 define ast_make_oo_cc
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [CXX] $$< -> $$@"
-	$(CMD_PREFIX) $$(CXX) -o $$@ -c $$< $$(CFLAGS)
+	$(CMD_PREFIX) $$(CXX) -o $$@ -c $$< $$(ASTCFLAGS)
 endef
 
 define ast_make_c_y
@@ -63,13 +63,13 @@
 define ast_make_so_o
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [LD] $$^ -> $$@"
-	$(CMD_PREFIX) $$(CC) $$(STATIC_BUILD) -o $$@ $$(LDFLAGS) $$(SOLINK) $$^ $$(LIBS)
+	$(CMD_PREFIX) $$(CC) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$(SOLINK) $$^ $$(LIBS)
 endef
 
 define ast_make_so_oo
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [LDXX] $$^ -> $$@"
-	$(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(LDFLAGS) $$(SOLINK) $$^ $$(LIBS)
+	$(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$(SOLINK) $$^ $$(LIBS)
 endef
 
 define ast_make_a_o
@@ -82,13 +82,13 @@
 define ast_make_final
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [LD] $$^ -> $$@"
-	$(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(LDFLAGS) $$^ $$(LIBS)
+	$(CMD_PREFIX) $$(CXX) $$(STATIC_BUILD) -o $$@ $$(ASTLDFLAGS) $$^ $$(LIBS)
 endef
 
 define ast_make_final_host
 $(1): $(2)
 	$(ECHO_PREFIX) echo "   [LD] $$^ -> $$@"
-	$(CMD_PREFIX) $$(HOST_CC) $$(STATIC_BUILD) -o $$@ $$(CFLAGS) $$(LDFLAGS) $$^ $$(LIBS)
+	$(CMD_PREFIX) $$(HOST_CC) $$(STATIC_BUILD) -o $$@ $$(HOST_CFLAGS) $$(HOST_LDFLAGS) $$^ $$(LIBS)
 endef
 
 $(eval $(call ast_make_o_c,%.o,%.c))

Modified: team/pcadach/chan_h323-live/apps/app_voicemail.c
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/apps/app_voicemail.c?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/apps/app_voicemail.c (original)
+++ team/pcadach/chan_h323-live/apps/app_voicemail.c Fri Sep 29 16:19:57 2006
@@ -1621,6 +1621,7 @@
 
 /*
  * A negative return value indicates an error.
+ * \note Should always be called with a lock already set on dir.
  */
 static int last_message_index(struct ast_vm_user *vmu, char *dir)
 {
@@ -1629,9 +1630,6 @@
 	DIR *msgdir;
 	struct dirent *msgdirent;
 	int msgdirint;
-
-	if (vm_lock_path(dir))
-		return ERROR_LOCK_PATH;
 
 	/* Reading the entire directory into a file map scales better than
 	 * doing a stat repeatedly on a predicted sequence.  I suspect this
@@ -1648,7 +1646,6 @@
 		if (map[x] == 0)
 			break;
 	}
-	ast_unlock_path(dir);
 
 	return x - 1;
 }

Modified: team/pcadach/chan_h323-live/channels/Makefile
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/Makefile?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/Makefile (original)
+++ team/pcadach/chan_h323-live/channels/Makefile Fri Sep 29 16:19:57 2006
@@ -65,7 +65,7 @@
 
 ifneq ($(wildcard h323/Makefile.ast),)
   include h323/Makefile.ast
-H323LDFLAGS += -Wl,--version-script=h323/noexport.map
+H323LDFLAGS+=-Wl,--version-script=h323/noexport.map
 clean::
 	$(MAKE) -C h323 clean
 else
@@ -105,8 +105,8 @@
 	$(CMD_PREFIX) $(CXX) $(SOLINK) -o $@ $< h323/libchanh323.a $(CHANH323LIB) -L$(PWLIBDIR)/lib $(PTLIB) -L$(OPENH323DIR)/lib $(H323LIB) -L/usr/lib -lcrypto -lssl -lexpat
 endif
 
-chan_misdn.o: CFLAGS+=-Imisdn 
+chan_misdn.o: ASTCFLAGS+=-Imisdn 
 
-misdn_config.o: CFLAGS+=-Imisdn 
+misdn_config.o: ASTCFLAGS+=-Imisdn 
 
 $(chan_misdn): chan_misdn.o misdn_config.o misdn/isdn_lib.o misdn/isdn_msg_parser.o

Modified: team/pcadach/chan_h323-live/channels/chan_h323.c
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/chan_h323.c?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/chan_h323.c (original)
+++ team/pcadach/chan_h323-live/channels/chan_h323.c Fri Sep 29 16:19:57 2006
@@ -629,6 +629,9 @@
 		strncpy(pvt->options.cid_rdnis, c->cid.cid_rdnis, sizeof(pvt->options.cid_rdnis));
 	}
 
+	pvt->options.presentation = c->cid.cid_pres;
+	pvt->options.type_of_number = c->cid.cid_ton;
+
 	if ((addr = pbx_builtin_getvar_helper(c, "PRIREDIRECTREASON"))) {
 		if (!strcasecmp(addr, "UNKNOWN"))
 			pvt->options.redirect_reason = 0;
@@ -1084,6 +1087,8 @@
 			ch->cid.cid_rdnis = ast_strdup(pvt->cd.redirect_number);
 			pbx_builtin_setvar_helper(ch, "PRIREDIRECTREASON", redirectingreason2str(pvt->cd.redirect_reason));
 		}
+		ch->cid.cid_pres = pvt->cd.presentation;
+		ch->cid.cid_ton = pvt->cd.type_of_number;
 
 		if (!ast_strlen_zero(pvt->exten) && strcmp(pvt->exten, "s")) {
 			ch->cid.cid_dnid = strdup(pvt->exten);

Modified: team/pcadach/chan_h323-live/channels/h323/ast_h323.cxx
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/h323/ast_h323.cxx?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/h323/ast_h323.cxx (original)
+++ team/pcadach/chan_h323-live/channels/h323/ast_h323.cxx Fri Sep 29 16:19:57 2006
@@ -733,6 +733,8 @@
 			rdnis = PString(opts->cid_rdnis);
 			redirect_reason = opts->redirect_reason;
 		}
+		cid_presentation = opts->presentation;
+		cid_ton = opts->type_of_number;
 	}
 	tunnelOptions = opts->tunnelOptions;
 }
@@ -765,6 +767,27 @@
 		WORD sourcePort;
 		PString redirect_number;
 		unsigned redirect_reason;
+		unsigned plan, type, screening, presentation;
+
+		/* Fetch presentation and type information about calling party's number */
+		if (setupPDU.GetQ931().GetCallingPartyNumber(sourceName, &plan, &type, &presentation, &screening, 2, 3)) {
+			/* Construct fields back */
+			cd->type_of_number = (type << 4) | screening;
+			cd->presentation = (presentation << 5) | screening;
+		} else if (cd->call_source_e164[0]) {
+			cd->type_of_number = 0;		/* UNKNOWN */
+			cd->presentation = 0x03;	/* ALLOWED NETWORK NUMBER - Default */
+			if (setupPDU.GetQ931().HasIE(Q931::UserUserIE)) {
+				const H225_Setup_UUIE &setup_uuie = setupPDU.m_h323_uu_pdu.m_h323_message_body;
+				if (setup_uuie.HasOptionalField(H225_Setup_UUIE::e_presentationIndicator))
+					cd->presentation = (cd->presentation & 0x9f) | (((unsigned int)setup_uuie.m_presentationIndicator.GetTag()) << 5);
+				if (setup_uuie.HasOptionalField(H225_Setup_UUIE::e_screeningIndicator))
+					cd->presentation = (cd->presentation & 0xe0) | (((unsigned int)setup_uuie.m_screeningIndicator.GetValue()) & 0x1f);
+			}
+		} else {
+			cd->type_of_number = 0;		/* UNKNOWN */
+			cd->presentation = 0x43;	/* NUMBER NOT AVAILABLE */
+		}
 
 		sourceName = setupPDU.GetQ931().GetDisplayName();
 		cd->call_source_name = strdup((const char *)sourceName);
@@ -778,6 +801,8 @@
 		}
 		else
 			cd->redirect_reason = -1;
+
+		SetDisplayName(cd->call_dest_e164);
 	}
 
 	/* Convert complex strings */
@@ -904,8 +929,14 @@
 
 static BOOL EmbedCiscoTunneledInfo(H323SignalPDU &pdu)
 {
-	const static Q931::InformationElementCodes codes[] =
-	{ Q931::RedirectingNumberIE, Q931::FacilityIE };
+	const static struct {
+		Q931::InformationElementCodes ie;
+		BOOL dontDelete;
+	} codes[] = {
+		{ Q931::RedirectingNumberIE, },
+		{ Q931::FacilityIE, },
+//		{ Q931::CallingPartyNumberIE, TRUE },
+	};
 
 	BOOL res = FALSE;
 	BOOL notRedirOnly = FALSE;
@@ -913,10 +944,11 @@
 	Q931 &q931 = pdu.GetQ931();
 
 	for(unsigned i = 0; i < (sizeof(codes) / sizeof(codes[0])); ++i) {
-		if (q931.HasIE(codes[i])) {
-			tmpQ931.SetIE(codes[i], q931.GetIE(codes[i]));
-			q931.RemoveIE(codes[i]);
-			if (codes[i] != Q931::RedirectingNumberIE)
+		if (q931.HasIE(codes[i].ie)) {
+			tmpQ931.SetIE(codes[i].ie, q931.GetIE(codes[i].ie));
+			if (!codes[i].dontDelete)
+				q931.RemoveIE(codes[i].ie);
+			if (codes[i].ie != Q931::RedirectingNumberIE)
 				notRedirOnly = TRUE;
 			res = TRUE;
 		}
@@ -1206,12 +1238,324 @@
 		return FALSE;
 	}
 
+	/* OpenH323 will build calling party information with default
+	   type and presentation information, so build it to be recorded
+	   by embedding routines */
+	setupPDU.GetQ931().SetCallingPartyNumber(GetLocalPartyName(), (cid_ton >> 4) & 0x07,
+			cid_ton & 0x0f, (cid_presentation >> 5) & 0x03, cid_presentation & 0x1f);
+	setupPDU.GetQ931().SetDisplayName(GetDisplayName());
+
 #ifdef TUNNELLING
 	EmbedTunneledInfo(setupPDU);
 #endif
 
 	return H323Connection::OnSendSignalSetup(setupPDU);
 }
+
+static BOOL BuildFastStartList(const H323Channel & channel,
+		H225_ArrayOf_PASN_OctetString & array,
+		H323Channel::Directions reverseDirection)
+{
+	H245_OpenLogicalChannel open;
+	const H323Capability & capability = channel.GetCapability();
+
+	if (channel.GetDirection() != reverseDirection) {
+		if (!capability.OnSendingPDU(open.m_forwardLogicalChannelParameters.m_dataType))
+			return FALSE;
+	}
+	else {
+		if (!capability.OnSendingPDU(open.m_reverseLogicalChannelParameters.m_dataType))
+			return FALSE;
+
+		open.m_forwardLogicalChannelParameters.m_multiplexParameters.SetTag(
+				H245_OpenLogicalChannel_forwardLogicalChannelParameters_multiplexParameters::e_none);
+		open.m_forwardLogicalChannelParameters.m_dataType.SetTag(H245_DataType::e_nullData);
+		open.IncludeOptionalField(H245_OpenLogicalChannel::e_reverseLogicalChannelParameters);
+	}
+
+	if (!channel.OnSendingPDU(open))
+		return FALSE;
+
+	PTRACE(4, "H225\tBuild fastStart:\n	" << setprecision(2) << open);
+	PINDEX last = array.GetSize();
+	array.SetSize(last+1);
+	array[last].EncodeSubType(open);
+
+	PTRACE(3, "H225\tBuilt fastStart for " << capability);
+	return TRUE;
+}
+
+H323Connection::CallEndReason MyH323Connection::SendSignalSetup(const PString & alias,
+		const H323TransportAddress & address)
+{
+	// Start the call, first state is asking gatekeeper
+	connectionState = AwaitingGatekeeperAdmission;
+
+	// Indicate the direction of call.
+	if (alias.IsEmpty())
+		remotePartyName = remotePartyAddress = address;
+	else {
+		remotePartyName = alias;
+		remotePartyAddress = alias + '@' + address;
+	}
+
+	// Start building the setup PDU to get various ID's
+	H323SignalPDU setupPDU;
+	H225_Setup_UUIE & setup = setupPDU.BuildSetup(*this, address);
+
+#ifdef H323_H450
+	h450dispatcher->AttachToSetup(setupPDU);
+#endif
+
+	// Save the identifiers generated by BuildSetup
+	setupPDU.GetQ931().GetCalledPartyNumber(remotePartyNumber);
+
+	H323TransportAddress gatekeeperRoute = address;
+
+	// Check for gatekeeper and do admission check if have one
+	H323Gatekeeper * gatekeeper = endpoint.GetGatekeeper();
+	H225_ArrayOf_AliasAddress newAliasAddresses;
+	if (gatekeeper != NULL) {
+		H323Gatekeeper::AdmissionResponse response;
+		response.transportAddress = &gatekeeperRoute;
+		response.aliasAddresses = &newAliasAddresses;
+		if (!gkAccessTokenOID)
+			response.accessTokenData = &gkAccessTokenData;
+		while (!gatekeeper->AdmissionRequest(*this, response, alias.IsEmpty())) {
+			PTRACE(1, "H225\tGatekeeper refused admission: "
+					<< (response.rejectReason == UINT_MAX
+					? PString("Transport error")
+					: H225_AdmissionRejectReason(response.rejectReason).GetTagName()));
+#ifdef H323_H450
+			h4502handler->onReceivedAdmissionReject(H4501_GeneralErrorList::e_notAvailable);
+#endif
+
+			switch (response.rejectReason) {
+			case H225_AdmissionRejectReason::e_calledPartyNotRegistered:
+				return EndedByNoUser;
+			case H225_AdmissionRejectReason::e_requestDenied:
+				return EndedByNoBandwidth;
+			case H225_AdmissionRejectReason::e_invalidPermission:
+			case H225_AdmissionRejectReason::e_securityDenial:
+				return EndedBySecurityDenial;
+			case H225_AdmissionRejectReason::e_resourceUnavailable:
+				return EndedByRemoteBusy;
+			case H225_AdmissionRejectReason::e_incompleteAddress:
+				if (OnInsufficientDigits())
+					break;
+				// Then default case
+			default:
+				return EndedByGatekeeper;
+			}
+
+			PString lastRemotePartyName = remotePartyName;
+			while (lastRemotePartyName == remotePartyName) {
+				Unlock(); // Release the mutex as can deadlock trying to clear call during connect.
+				digitsWaitFlag.Wait();
+				if (!Lock()) // Lock while checking for shutting down.
+					return EndedByCallerAbort;
+			}
+		}
+		mustSendDRQ = TRUE;
+		if (response.gatekeeperRouted) {
+			setup.IncludeOptionalField(H225_Setup_UUIE::e_endpointIdentifier);
+			setup.m_endpointIdentifier = gatekeeper->GetEndpointIdentifier();
+			gatekeeperRouted = TRUE;
+		}
+	}
+
+#ifdef H323_TRANSNEXUS_OSP
+	// check for OSP server (if not using GK)
+	if (gatekeeper == NULL) {
+		OpalOSP::Provider * ospProvider = endpoint.GetOSPProvider();
+		if (ospProvider != NULL) {
+			OpalOSP::Transaction * transaction = new OpalOSP::Transaction();
+			if (transaction->Open(*ospProvider) != 0) {
+				PTRACE(1, "H225\tCannot create OSP transaction");
+				return EndedByOSPRefusal;
+			}
+
+			OpalOSP::Transaction::DestinationInfo destInfo;
+			if (!AuthoriseOSPTransaction(*transaction, destInfo)) {
+				delete transaction;
+				return EndedByOSPRefusal;
+			}
+
+			// save the transaction for use by the call
+			ospTransaction = transaction;
+
+			// retreive the call information
+			gatekeeperRoute = destInfo.destinationAddress;
+			newAliasAddresses.Append(new H225_AliasAddress(destInfo.calledNumber));
+
+			// insert the token
+			setup.IncludeOptionalField(H225_Setup_UUIE::e_tokens);
+			destInfo.InsertToken(setup.m_tokens);
+		}
+	}
+#endif
+
+	// Update the field e_destinationAddress in the SETUP PDU to reflect the new 
+	// alias received in the ACF (m_destinationInfo).
+	if (newAliasAddresses.GetSize() > 0) {
+		setup.IncludeOptionalField(H225_Setup_UUIE::e_destinationAddress);
+		setup.m_destinationAddress = newAliasAddresses;
+
+		// Update the Q.931 Information Element (if is an E.164 address)
+		PString e164 = H323GetAliasAddressE164(newAliasAddresses);
+		if (!e164)
+			remotePartyNumber = e164;
+	}
+
+	if (addAccessTokenToSetup && !gkAccessTokenOID && !gkAccessTokenData.IsEmpty()) {
+		PString oid1, oid2;
+		PINDEX comma = gkAccessTokenOID.Find(',');
+		if (comma == P_MAX_INDEX)
+			oid1 = oid2 = gkAccessTokenOID;
+		else {
+			oid1 = gkAccessTokenOID.Left(comma);
+			oid2 = gkAccessTokenOID.Mid(comma+1);
+		}
+		setup.IncludeOptionalField(H225_Setup_UUIE::e_tokens);
+		PINDEX last = setup.m_tokens.GetSize();
+		setup.m_tokens.SetSize(last+1);
+		setup.m_tokens[last].m_tokenOID = oid1;
+		setup.m_tokens[last].IncludeOptionalField(H235_ClearToken::e_nonStandard);
+		setup.m_tokens[last].m_nonStandard.m_nonStandardIdentifier = oid2;
+		setup.m_tokens[last].m_nonStandard.m_data = gkAccessTokenData;
+	}
+
+	if (!signallingChannel->SetRemoteAddress(gatekeeperRoute)) {
+		PTRACE(1, "H225\tInvalid "
+					 << (gatekeeperRoute != address ? "gatekeeper" : "user")
+					 << " supplied address: \"" << gatekeeperRoute << '"');
+		connectionState = AwaitingTransportConnect;
+		return EndedByConnectFail;
+	}
+
+	// Do the transport connect
+	connectionState = AwaitingTransportConnect;
+
+	// Release the mutex as can deadlock trying to clear call during connect.
+	Unlock();
+
+	signallingChannel->SetWriteTimeout(100);
+
+	BOOL connectFailed = !signallingChannel->Connect();
+
+	// Lock while checking for shutting down.
+	if (!Lock())
+		return EndedByCallerAbort;
+
+	// See if transport connect failed, abort if so.
+	if (connectFailed) {
+		connectionState = NoConnectionActive;
+		switch (signallingChannel->GetErrorNumber()) {
+			case ENETUNREACH :
+				return EndedByUnreachable;
+			case ECONNREFUSED :
+				return EndedByNoEndPoint;
+			case ETIMEDOUT :
+				return EndedByHostOffline;
+		}
+		return EndedByConnectFail;
+	}
+
+	PTRACE(3, "H225\tSending Setup PDU");
+	connectionState = AwaitingSignalConnect;
+
+	// Put in all the signalling addresses for link
+	setup.IncludeOptionalField(H225_Setup_UUIE::e_sourceCallSignalAddress);
+	signallingChannel->SetUpTransportPDU(setup.m_sourceCallSignalAddress, TRUE);
+	if (!setup.HasOptionalField(H225_Setup_UUIE::e_destCallSignalAddress)) {
+		setup.IncludeOptionalField(H225_Setup_UUIE::e_destCallSignalAddress);
+		signallingChannel->SetUpTransportPDU(setup.m_destCallSignalAddress, FALSE);
+	}
+
+	// If a standard call do Fast Start (if required)
+	if (setup.m_conferenceGoal.GetTag() == H225_Setup_UUIE_conferenceGoal::e_create) {
+
+		// Get the local capabilities before fast start is handled
+		OnSetLocalCapabilities();
+
+		// Ask the application what channels to open
+		PTRACE(3, "H225\tCheck for Fast start by local endpoint");
+		fastStartChannels.RemoveAll();
+		OnSelectLogicalChannels();
+
+		// If application called OpenLogicalChannel, put in the fastStart field
+		if (!fastStartChannels.IsEmpty()) {
+			PTRACE(3, "H225\tFast start begun by local endpoint");
+			for (PINDEX i = 0; i < fastStartChannels.GetSize(); i++)
+				BuildFastStartList(fastStartChannels[i], setup.m_fastStart, H323Channel::IsReceiver);
+			if (setup.m_fastStart.GetSize() > 0)
+				setup.IncludeOptionalField(H225_Setup_UUIE::e_fastStart);
+		}
+
+		// Search the capability set and see if we have video capability
+		for (PINDEX i = 0; i < localCapabilities.GetSize(); i++) {
+			switch (localCapabilities[i].GetMainType()) {
+			case H323Capability::e_Audio:
+			case H323Capability::e_UserInput:
+				break;
+
+			default:	// Is video or other data (eg T.120)
+				setupPDU.GetQ931().SetBearerCapabilities(Q931::TransferUnrestrictedDigital, 6);
+				i = localCapabilities.GetSize(); // Break out of the for loop
+				break;
+			}
+		}
+	}
+
+	if (!OnSendSignalSetup(setupPDU))
+		return EndedByNoAccept;
+
+	// Do this again (was done when PDU was constructed) in case
+	// OnSendSignalSetup() changed something.
+//	setupPDU.SetQ931Fields(*this, TRUE);
+	setupPDU.GetQ931().GetCalledPartyNumber(remotePartyNumber);
+
+	fastStartState = FastStartDisabled;
+	BOOL set_lastPDUWasH245inSETUP = FALSE;
+
+	if (h245Tunneling && doH245inSETUP) {
+		h245TunnelTxPDU = &setupPDU;
+
+		// Try and start the master/slave and capability exchange through the tunnel
+		// Note: this used to be disallowed but is now allowed as of H323v4
+		BOOL ok = StartControlNegotiations();
+
+		h245TunnelTxPDU = NULL;
+
+		if (!ok)
+			return EndedByTransportFail;
+
+		if (setup.m_fastStart.GetSize() > 0) {
+			// Now if fast start as well need to put this in setup specific field
+			// and not the generic H.245 tunneling field
+			setup.IncludeOptionalField(H225_Setup_UUIE::e_parallelH245Control);
+			setup.m_parallelH245Control = setupPDU.m_h323_uu_pdu.m_h245Control;
+			setupPDU.m_h323_uu_pdu.RemoveOptionalField(H225_H323_UU_PDU::e_h245Control);
+			set_lastPDUWasH245inSETUP = TRUE;
+		}
+	}
+
+	// Send the initial PDU
+	setupTime = PTime();
+	if (!WriteSignalPDU(setupPDU))
+		return EndedByTransportFail;
+
+	// WriteSignalPDU always resets lastPDUWasH245inSETUP.
+	// So set it here if required
+	if (set_lastPDUWasH245inSETUP)
+		lastPDUWasH245inSETUP = TRUE;
+
+	// Set timeout for remote party to answer the call
+	signallingChannel->SetReadTimeout(endpoint.GetSignallingChannelCallTimeout());
+
+	return NumCallEndReasons;
+}
+
 
 BOOL MyH323Connection::OnSendReleaseComplete(H323SignalPDU & releaseCompletePDU)
 {

Modified: team/pcadach/chan_h323-live/channels/h323/ast_h323.h
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/h323/ast_h323.h?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/h323/ast_h323.h (original)
+++ team/pcadach/chan_h323-live/channels/h323/ast_h323.h Fri Sep 29 16:19:57 2006
@@ -90,6 +90,7 @@
 	virtual BOOL StartControlChannel(const H225_TransportAddress & h245Address);
 	void SetCallOptions(void *opts, BOOL isIncoming);
 	void SetCallDetails(void *callDetails, const H323SignalPDU &setupPDU, BOOL isIncoming);
+	virtual H323Connection::CallEndReason SendSignalSetup(const PString&, const H323TransportAddress&);
 #ifdef TUNNELLING
 	virtual BOOL HandleSignalPDU(H323SignalPDU &pdu);
 	BOOL EmbedTunneledInfo(H323SignalPDU &pdu);
@@ -104,6 +105,8 @@
 	PString destAliases;
 	PString sourceE164;
 	PString destE164;
+	int cid_presentation;
+	int cid_ton;
 	PString rdnis;
 	int redirect_reason;
 

Modified: team/pcadach/chan_h323-live/channels/h323/chan_h323.h
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/channels/h323/chan_h323.h?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/channels/h323/chan_h323.h (original)
+++ team/pcadach/chan_h323-live/channels/h323/chan_h323.h Fri Sep 29 16:19:57 2006
@@ -50,6 +50,8 @@
 	char			cid_name[80];
 	char			cid_rdnis[80];
 	int				redirect_reason;
+	int				presentation;
+	int				type_of_number;
 	int				fastStart;
 	int				h245Tunneling;
 	int				silenceSuppression;
@@ -115,7 +117,7 @@
 	char *redirect_number;
 	int redirect_reason;
 	int presentation;
-	int screening;
+	int type_of_number;
 	char *sourceIp;
 } call_details_t;
 

Modified: team/pcadach/chan_h323-live/codecs/Makefile
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/codecs/Makefile?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/codecs/Makefile (original)
+++ team/pcadach/chan_h323-live/codecs/Makefile Fri Sep 29 16:19:57 2006
@@ -42,14 +42,14 @@
 
 gsm/lib/libgsm.a:
 	@mkdir -p gsm/lib
-	@CFLAGS="$(OTHER_SUBDIR_CFLAGS) -I." $(MAKE) -C gsm lib/libgsm.a
+	@$(MAKE) -C gsm lib/libgsm.a
 
 $(LIBLPC10):
-	@CFLAGS="$(OTHER_SUBDIR_CFLAGS)" $(MAKE) -C lpc10 all
+	@$(MAKE) -C lpc10 all
 
 $(codec_lpc10): $(LIBLPC10)
 
 $(LIBILBC):
-	@CFLAGS="$(OTHER_SUBDIR_CFLAGS)" $(MAKE) -C ilbc all
+	@$(MAKE) -C ilbc all
 
 $(codec_ilbc): $(LIBILBC)

Modified: team/pcadach/chan_h323-live/codecs/gsm/Makefile
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/codecs/gsm/Makefile?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/codecs/gsm/Makefile (original)
+++ team/pcadach/chan_h323-live/codecs/gsm/Makefile Fri Sep 29 16:19:57 2006
@@ -72,7 +72,6 @@
 # CCFLAGS 	= -c -O
 
 CCFLAGS 	+= -c -DNeedFunctionPrototypes=1 -funroll-loops $(OPTIMIZE)
-CCFLAGS   += -fPIC
 
 # LD		= gcc
 # LDFLAGS 	=
@@ -155,7 +154,7 @@
 DEBUG	= -DNDEBUG
 ######### Remove -DNDEBUG to enable assertions.
 
-CFLAGS += $(PG) $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) \
+ASTCFLAGS += $(PG) $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) \
 	$(LTP_CUT) $(WAV49) $(K6OPT) $(CCINC) -I$(INC)
 ######### It's $(CC) $(CFLAGS)
 
@@ -319,10 +318,6 @@
 
 # Default rules
 
-.c.o:
-		$(CC) $(CFLAGS:-Werror=) $?
-		@-mv `$(BASENAME) $@` $@ > /dev/null 2>&1
-
 include $(ASTTOPDIR)/Makefile.rules
 
 # Target rules

Modified: team/pcadach/chan_h323-live/configure
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/configure?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/configure (original)
+++ team/pcadach/chan_h323-live/configure Fri Sep 29 16:19:57 2006
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 43332 .
+# From configure.ac Revision: 43835 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.60.
 #
@@ -694,6 +694,9 @@
 CAP_LIB
 CAP_INCLUDE
 PBX_CAP
+CURL_LIB
+CURL_INCLUDE
+PBX_CURL
 CURSES_LIB
 CURSES_INCLUDE
 PBX_CURSES
@@ -832,9 +835,6 @@
 GTK_INCLUDE
 GTK_LIB
 CURL
-PBX_CURL
-CURL_INCLUDE
-CURL_LIB
 LTLIBOBJS'
 ac_subst_files=''
       ac_precious_vars='build_alias
@@ -1429,6 +1429,7 @@
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-asound=PATH      use Advanced Linux Sound Architecture files in PATH
   --with-cap=PATH         use POSIX 1.e capabilities files in PATH
+  --with-curl=PATH        use cURL files in PATH
   --with-curses=PATH      use curses files in PATH
   --with-gnutls=PATH      use GNU TLS support (used for iksemel only) files in
                           PATH
@@ -5418,6 +5419,33 @@
 
 
 
+CURL_DESCRIP="cURL"
+CURL_OPTION="curl"
+
+# Check whether --with-curl was given.
+if test "${with_curl+set}" = set; then
+  withval=$with_curl;
+case ${withval} in
+     n|no)
+     USE_CURL=no
+     ;;
+     y|ye|yes)
+     CURL_MANDATORY="yes"
+     ;;
+     *)
+     CURL_DIR="${withval}"
+     CURL_MANDATORY="yes"
+     ;;
+esac
+
+fi
+
+PBX_CURL=0
+
+
+
+
+
 CURSES_DESCRIP="curses"
 CURSES_OPTION="curses"
 
@@ -16071,7 +16099,7 @@
 	ac_cv_lib_cap_cap_from_text=no
 fi
 
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+rm -f core conftest.err conftest.$ac_objext \
       conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
@@ -31419,8 +31447,8 @@
 
 
 
-PBX_CURL=0
-if test -n "$ac_tool_prefix"; then
+if test "${USE_CURL}" != "no"; then
+   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}curl-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}curl-config; ac_word=$2
 { echo "$as_me:$LINENO: checking for $ac_word" >&5
@@ -31522,35 +31550,33 @@
   CURL="$ac_cv_path_CURL"
 fi
 
-if test ! x"${CURL}" = xNo; then
-# check for version
-   if test "${host_os}" = "SunOS"; then
-      if [ 0x`curl-config --vernum` -ge 0x70907 ]; then
-         CURL_INCLUDE=$(${CURL} --cflags)
-         CURL_LIB=$(${CURL} --libs)
-         PBX_CURL=1
+   if test ! x"${CURL}" = xNo; then
+   # check for version
+      if test "${host_os}" = "SunOS"; then
+            if [ 0x`curl-config --vernum` -ge 0x70907 ]; then
+	        CURL_INCLUDE=$(${CURL} --cflags)
+		CURL_LIB=$(${CURL} --libs)
+		PBX_CURL=1
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_CURL 1
 _ACEOF
 
-      fi
-   else
-      if [[ 0x`curl-config --vernum` -ge 0x70907 ]]; then
-         CURL_INCLUDE=$(${CURL} --cflags)
-         CURL_LIB=$(${CURL} --libs)
-         PBX_CURL=1
+	    fi
+	 else
+	    if [[ 0x`curl-config --vernum` -ge 0x70907 ]]; then
+	        CURL_INCLUDE=$(${CURL} --cflags)
+		CURL_LIB=$(${CURL} --libs)
+		PBX_CURL=1
 
 cat >>confdefs.h <<\_ACEOF
 #define HAVE_CURL 1
 _ACEOF
 
-      fi
-   fi
-fi
-
-
-
+	    fi
+	fi
+    fi
+fi
 
 ac_config_files="$ac_config_files build_tools/menuselect-deps makeopts channels/h323/Makefile"
 
@@ -32251,11 +32277,11 @@
 CAP_LIB!$CAP_LIB$ac_delim
 CAP_INCLUDE!$CAP_INCLUDE$ac_delim
 PBX_CAP!$PBX_CAP$ac_delim
+CURL_LIB!$CURL_LIB$ac_delim
+CURL_INCLUDE!$CURL_INCLUDE$ac_delim
+PBX_CURL!$PBX_CURL$ac_delim
 CURSES_LIB!$CURSES_LIB$ac_delim
 CURSES_INCLUDE!$CURSES_INCLUDE$ac_delim
-PBX_CURSES!$PBX_CURSES$ac_delim
-GNUTLS_LIB!$GNUTLS_LIB$ac_delim
-GNUTLS_INCLUDE!$GNUTLS_INCLUDE$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -32297,6 +32323,9 @@
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+PBX_CURSES!$PBX_CURSES$ac_delim
+GNUTLS_LIB!$GNUTLS_LIB$ac_delim
+GNUTLS_INCLUDE!$GNUTLS_INCLUDE$ac_delim
 PBX_GNUTLS!$PBX_GNUTLS$ac_delim
 GSM_LIB!$GSM_LIB$ac_delim
 GSM_INCLUDE!$GSM_INCLUDE$ac_delim
@@ -32391,9 +32420,6 @@
 VORBIS_LIB!$VORBIS_LIB$ac_delim
 VORBIS_INCLUDE!$VORBIS_INCLUDE$ac_delim
 PBX_VORBIS!$PBX_VORBIS$ac_delim
-VPB_LIB!$VPB_LIB$ac_delim
-VPB_INCLUDE!$VPB_INCLUDE$ac_delim
-PBX_VPB!$PBX_VPB$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -32435,6 +32461,9 @@
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+VPB_LIB!$VPB_LIB$ac_delim
+VPB_INCLUDE!$VPB_INCLUDE$ac_delim
+PBX_VPB!$PBX_VPB$ac_delim
 ZLIB_LIB!$ZLIB_LIB$ac_delim
 ZLIB_INCLUDE!$ZLIB_INCLUDE$ac_delim
 PBX_ZLIB!$PBX_ZLIB$ac_delim
@@ -32471,9 +32500,6 @@
 GTK_INCLUDE!$GTK_INCLUDE$ac_delim
 GTK_LIB!$GTK_LIB$ac_delim
 CURL!$CURL$ac_delim
-PBX_CURL!$PBX_CURL$ac_delim
-CURL_INCLUDE!$CURL_INCLUDE$ac_delim
-CURL_LIB!$CURL_LIB$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 

Modified: team/pcadach/chan_h323-live/configure.ac
URL: http://svn.digium.com/view/asterisk/team/pcadach/chan_h323-live/configure.ac?rev=44045&r1=44044&r2=44045&view=diff
==============================================================================
--- team/pcadach/chan_h323-live/configure.ac (original)
+++ team/pcadach/chan_h323-live/configure.ac Fri Sep 29 16:19:57 2006
@@ -176,6 +176,7 @@
 
 AST_EXT_LIB_SETUP([ALSA], [Advanced Linux Sound Architecture], [asound])
 AST_EXT_LIB_SETUP([CAP], [POSIX 1.e capabilities], [cap])
+AST_EXT_LIB_SETUP([CURL], [cURL], [curl])
 AST_EXT_LIB_SETUP([CURSES], [curses], [curses])
 AST_EXT_LIB_SETUP([GNUTLS], [GNU TLS support (used for iksemel only)], [gnutls])
 AST_EXT_LIB_SETUP([GSM], [GSM], [gsm], [, or 'internal'])
@@ -997,29 +998,27 @@
 AC_SUBST(GTK_INCLUDE)
 AC_SUBST(GTK_LIB)
 
-PBX_CURL=0
-AC_PATH_TOOL([CURL], [curl-config], No)

[... 194 lines stripped ...]


More information about the asterisk-commits mailing list