[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