summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-03-18 12:28:03 +0000
committerBenny Prijono <bennylp@teluu.com>2006-03-18 12:28:03 +0000
commit5d98d9ed57823080f63434018847cd438b1894c5 (patch)
tree9b965f6b89019ed182d0d764a62fa4e1d3b01cf4
parent1ef58d201f4613f91a9cbafa4545f37f3fab3cf6 (diff)
Fixed or added misc flags to enable build selection via compile time macro
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@331 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r--pjlib/include/pj/config.h19
-rw-r--r--pjlib/src/pj/except.c2
-rw-r--r--pjsip/include/pjsip/sip_config.h75
3 files changed, 79 insertions, 17 deletions
diff --git a/pjlib/include/pj/config.h b/pjlib/include/pj/config.h
index d09795a4..607bf261 100644
--- a/pjlib/include/pj/config.h
+++ b/pjlib/include/pj/config.h
@@ -102,6 +102,7 @@
# undef PJ_HAS_EVENT_OBJ
# undef PJ_ENABLE_EXTRA_CHECK
# undef PJ_EXCEPTION_USE_WIN32_SEH
+# undef PJ_HAS_ERROR_STRING
#endif
/**
@@ -245,10 +246,14 @@
* maximum number of socket handles passed to select() (i.e. FD_SETSIZE will
* be set to this value).
*
- * Default: 256
+ * Default: 256 (64 for WinCE)
*/
#ifndef PJ_IOQUEUE_MAX_HANDLES
-# define PJ_IOQUEUE_MAX_HANDLES (256)
+# if defined(PJ_WIN32_WINCE) && PJ_WIN32_WINCE!=0
+# define PJ_IOQUEUE_MAX_HANDLES (64)
+# else
+# define PJ_IOQUEUE_MAX_HANDLES (256)
+# endif
#endif
/**
@@ -344,6 +349,16 @@
# define PJ_TIMESTAMP_USE_RDTSC 0
#endif
+/**
+ * Include error message string in the library (pj_strerror()).
+ * This is very much desirable!
+ *
+ * Default: 1
+ */
+#ifndef PJ_HAS_ERROR_STRING
+# define PJ_HAS_ERROR_STRING 1
+#endif
+
/** @} */
diff --git a/pjlib/src/pj/except.c b/pjlib/src/pj/except.c
index 0a9f32ab..531573f7 100644
--- a/pjlib/src/pj/except.c
+++ b/pjlib/src/pj/except.c
@@ -133,7 +133,7 @@ PJ_DEF(pj_status_t) pj_exception_id_alloc( const char *name,
{
PJ_ASSERT_RETURN(last_exception_id < PJ_MAX_EXCEPTION_ID-1, PJ_ETOOMANY);
- *id = last_exception_id++
+ *id = last_exception_id++;
return PJ_SUCCESS;
}
diff --git a/pjsip/include/pjsip/sip_config.h b/pjsip/include/pjsip/sip_config.h
index 48d86c63..1ee128eb 100644
--- a/pjsip/include/pjsip/sip_config.h
+++ b/pjsip/include/pjsip/sip_config.h
@@ -21,13 +21,69 @@
#include <pj/config.h>
+/**
+ * Specify maximum transaction count in transaction hash table.
+ * Default value is 16*1024
+ */
+#ifndef PJSIP_MAX_TSX_COUNT
+# define PJSIP_MAX_TSX_COUNT (16*1024)
+#endif
+
+/**
+ * Specify maximum number of dialogs in the dialog hash table.
+ * Default value is 16*1024.
+ */
+#ifndef PJSIP_MAX_DIALOG_COUNT
+# define PJSIP_MAX_DIALOG_COUNT (16*1024)
+#endif
+
+
+/**
+ * Specify maximum number of transports.
+ * Default value is equal to maximum number of handles in ioqueue.
+ * See also PJSIP_TPMGR_HTABLE_SIZE.
+ */
+#ifndef PJSIP_MAX_TRANSPORTS
+# define PJSIP_MAX_TRANSPORTS (PJ_IOQUEUE_MAX_HANDLES)
+#endif
+
+
+/**
+ * Transport manager hash table size (must be 2^n-1).
+ * See also PJSIP_MAX_TRANSPORTS
+ */
+#ifndef PJSIP_TPMGR_HTABLE_SIZE
+# define PJSIP_TPMGR_HTABLE_SIZE 31
+#endif
+
+
+/**
+ * Specify maximum URL size.
+ * This constant is used mainly when printing the URL for logging purpose
+ * only.
+ */
+#ifndef PJSIP_MAX_URL_SIZE
+# define PJSIP_MAX_URL_SIZE 256
+#endif
+
+
+/**
+ * Specify maximum number of modules.
+ * This mainly affects the size of mod_data array in various components.
+ */
+#ifndef PJSIP_MAX_MODULE
+# define PJSIP_MAX_MODULE 16
+#endif
+
+
+
/* Endpoint. */
#define PJSIP_MAX_TIMER_COUNT (2*PJSIP_MAX_TSX_COUNT + 2*PJSIP_MAX_DIALOG_COUNT)
-#define PJSIP_POOL_LEN_ENDPT (2048+64*PJSIP_MAX_TSX_COUNT)
-#define PJSIP_POOL_INC_ENDPT (1024)
+#define PJSIP_POOL_LEN_ENDPT (4000)
+#define PJSIP_POOL_INC_ENDPT (4000)
/* Transport related constants. */
-#define PJSIP_MAX_TRANSPORTS (PJ_IOQUEUE_MAX_HANDLES)
+
#define PJSIP_MAX_PKT_LEN 1500
#define PJSIP_POOL_RDATA_LEN 4000
#define PJSIP_POOL_RDATA_INC 4000
@@ -35,8 +91,8 @@
#define PJSIP_POOL_INC_TRANSPORT 512
#define PJSIP_POOL_LEN_TDATA 4000
#define PJSIP_POOL_INC_TDATA 4000
-#define PJSIP_POOL_LEN_UA (64 + 32*PJSIP_MAX_DIALOG_COUNT)
-#define PJSIP_POOL_INC_UA 0
+#define PJSIP_POOL_LEN_UA 4000
+#define PJSIP_POOL_INC_UA 4000
#define PJSIP_TRANSPORT_CLOSE_TIMEOUT 30
#define PJSIP_MAX_TRANSPORT_USAGE 16
@@ -48,7 +104,6 @@
/* Transaction related constants. */
#define PJSIP_POOL_TSX_LAYER_LEN 4000
#define PJSIP_POOL_TSX_LAYER_INC 4000
-#define PJSIP_MAX_TSX_COUNT (16*1024)
#define PJSIP_POOL_TSX_LEN 1536 //768
#define PJSIP_POOL_TSX_INC 256
#define PJSIP_MAX_TSX_KEY_LEN (PJSIP_MAX_URL_SIZE*2)
@@ -61,26 +116,18 @@
#define PJSIP_MAX_CALL_ID_LEN PJ_GUID_STRING_LENGTH
#define PJSIP_MAX_TAG_LEN PJ_GUID_STRING_LENGTH
#define PJSIP_MAX_BRANCH_LEN (PJSIP_RFC3261_BRANCH_LEN + PJ_GUID_STRING_LENGTH)
-#define PJSIP_MAX_URL_SIZE 256
#define PJSIP_MAX_HNAME_LEN 64
/* Dialog related constants. */
-#define PJSIP_MAX_DIALOG_COUNT (16*1024)
#define PJSIP_POOL_LEN_DIALOG 1200
#define PJSIP_POOL_INC_DIALOG 512
-/* Transport manager hash table size (must be 2^n-1). */
-#define PJSIP_TPMGR_HTABLE_SIZE 31
-
/* Transport idle timeout before it's destroyed. */
#define PJSIP_TRANSPORT_IDLE_TIME 30
/* Max entries to process in timer heap per poll. */
#define PJSIP_MAX_TIMED_OUT_ENTRIES 10
-/* Module related constants. */
-#define PJSIP_MAX_MODULE 16
-
/* Maximum header types. */
#define PJSIP_MAX_HEADER_TYPES 64