[asterisk-scf-commits] asterisk-scf/release/slice.git branch "master" updated.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Thu Jul 21 10:33:58 CDT 2011


branch "master" has been updated
       via  084e46ffda7556c95fae03bebb2043360cbbab6e (commit)
       via  70c5318d3f020014d8169508998c23749ecf01b2 (commit)
       via  42649f043da0d2d9f781a4abc1699b930ed23a94 (commit)
       via  efd8f9ec73bca6cd1b092a390555bad7d41d7b90 (commit)
      from  ba6560f6ed82d3d3ba516f0edc701fc76137a4be (commit)

Summary of changes:


- Log -----------------------------------------------------------------
commit 084e46ffda7556c95fae03bebb2043360cbbab6e
Merge: 70c5318 ba6560f
Author: Mark Michelson <mmichelson at digium.com>
Date:   Thu Jul 21 10:10:40 2011 -0500

    Merge branch 'master' into sip-auth-hook


commit 70c5318d3f020014d8169508998c23749ecf01b2
Merge: 42649f0 f08f95b
Author: Mark Michelson <mmichelson at digium.com>
Date:   Thu Feb 10 17:09:50 2011 -0600

    Merge branch 'sip-auth-hook' of git.asterisk.org:asterisk-scf/integration/slice into sip-auth-hook


commit 42649f043da0d2d9f781a4abc1699b930ed23a94
Merge: efd8f9e 047f8c5
Author: Mark Michelson <mmichelson at digium.com>
Date:   Mon Feb 7 13:39:10 2011 -0600

    Merge branch 'sip-auth-hook' of git.asterisk.org:asterisk-scf/integration/slice into sip-auth-hook


commit efd8f9ec73bca6cd1b092a390555bad7d41d7b90
Author: Kevin P. Fleming <kpfleming at digium.com>
Date:   Fri Feb 4 16:45:16 2011 +0100

    Add an initial version of the basic Hook interface and a SIP
    authentication Extension Point. This all came from the relevant
    wiki pages on wiki.asterisk.org, with some minor modifications
    along the way.

diff --git a/AsteriskSCF/SIP/SIPExtensionPointIf.ice b/AsteriskSCF/SIP/SIPExtensionPointIf.ice
new file mode 100644
index 0000000..dffcd74
--- /dev/null
+++ b/AsteriskSCF/SIP/SIPExtensionPointIf.ice
@@ -0,0 +1,121 @@
+/*
+ * Asterisk SCF -- An open-source communications framework.
+ *
+ * Copyright (C) 2011, Digium, Inc.
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk SCF project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE.txt file
+ * at the top of the source tree.
+ */
+
+#pragma once
+
+#include <Ice/BuiltinSequences.ice>
+
+#include <AsteriskSCF/System/Hook/HookIf.ice>
+
+module AsteriskSCF
+{
+
+module SIP
+{
+
+module ExtensionPoint
+{
+
+["suppress"]
+module V1
+{
+
+    dictionary<string, string> ParamDict;
+
+    enum RequestTransport
+    {
+	UDP,
+	TCP,
+	TLS
+    };
+
+    class RequestInfo
+    {
+	// The display name in the From header
+	string fromName;
+	// The URI in the From header
+	string fromURI;
+	// URI parameters in the From header
+	ParamDict fromParams;
+	// The display name in the To header
+	string toName;
+	// The URI in the To header
+	string toURI;
+	// URI parameters in the To header
+	ParamDict toParams;
+	// The request URI
+	string requestURI;
+	// request URI parameters
+	ParamDict requestURIParams;
+	// Source IP address
+	string IPAddr;
+	// Source Port
+	int port;
+	// Transport over which request was received
+	RequestTransport transport;
+    };
+
+    enum DigestAlgorithm
+    {
+	MD5,
+	MD5sess,
+	AKAv1MD5,
+	AKAv1MD5sess,
+	AKAv2MD5,
+	AKAv2MD5sess
+    };
+
+    class DigestChallenge
+    {
+	string username;
+	string password;
+	Ice::StringSeq domain;
+	string realm;
+	Ice::StringSeq nonce;
+	Ice::StringSeq opaque;
+	DigestAlgorithm algorithm;
+    };
+
+    sequence<DigestChallenge> DigestChallengeSeq;
+
+    interface AuthHook
+    {
+	AsteriskSCF::System::Hook::V1::HookResult challengeRequest(RequestInfo info, out DigestChallengeSeq challenges);
+    };
+
+    enum RequestType
+    {
+	DialogEstablishing,
+	NonDialog,
+	InDialog,
+    };
+
+    sequence<RequestType> RequestTypeSeq;
+
+    interface AuthExtensionPoint
+    {
+	AsteriskSCF::System::Hook::V1::HookId addAuthHook(AuthHook *hook, RequestTypeSeq requestTypes);
+	void removeAuthHook(AsteriskSCF::System::Hook::V1::HookId id);
+	void clearAuthHooks();
+    };
+
+}; /* End of module V1 */
+
+}; /* End of module ExtensionPoint */
+
+}; /* End of module SIP */
+
+}; /* End of module AsteriskSCF */
diff --git a/AsteriskSCF/System/Hook/HookIf.ice b/AsteriskSCF/System/Hook/HookIf.ice
new file mode 100644
index 0000000..c9693fa
--- /dev/null
+++ b/AsteriskSCF/System/Hook/HookIf.ice
@@ -0,0 +1,58 @@
+/*
+ * Asterisk SCF -- An open-source communications framework.
+ *
+ * Copyright (C) 2011, Digium, Inc.
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk SCF project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE.txt file
+ * at the top of the source tree.
+ */
+
+#pragma once
+
+module AsteriskSCF
+{
+
+module System
+{
+
+module Hook
+{
+
+module V1
+{
+
+    struct HookId
+    {
+	string id;
+    };
+
+    enum HookStatus
+    {
+	/* Hook successfully processed input/returned result */
+	Succeeded,
+	/* Hook failed to process input or return result */
+	Failed,
+	/* Hook declined to process input and return result */
+	Declined
+    };
+
+    struct HookResult
+    {
+	HookStatus status;
+	string info;
+    };
+
+}; /* End of V1 */
+
+}; /* End of Hook */
+
+}; /* End of System */
+
+}; /* End of AsteriskSCF */

-----------------------------------------------------------------------


-- 
asterisk-scf/release/slice.git



More information about the asterisk-scf-commits mailing list