reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
RADIUSAuthenticator.hxx
Go to the documentation of this file.
1#if !defined(RESIP_RADIUS_AUTHENTICATOR_HXX)
2#define RESIP_RADIUS_AUTHENTICATOR_HXX
3
4#if defined(HAVE_CONFIG_H)
5 #include "config.h"
6#endif
7
8#include <vector>
9#include "rutil/Data.hxx"
12#include "repro/Processor.hxx"
13#include "repro/ProxyConfig.hxx"
16
17#ifdef USE_RADIUS_CLIENT
18
19namespace resip
20{
21 class SipStack;
22}
23
24namespace repro
25{
26
27class RADIUSAuthenticator : public DigestAuthenticator
28{
29 public:
30 RADIUSAuthenticator(ProxyConfig& config,
33 const std::vector<resip::DigestType>& challengeDigestTypes = std::vector<resip::DigestType>());
35
36 protected:
37 processor_action_t requestUserAuthInfo(RequestContext &, const resip::Auth& auth, UserInfoMessage *userInfo);
38};
39
40class ReproRADIUSDigestAuthListener : public resip::RADIUSDigestAuthListener
41{
42 private:
43 UserInfoMessage *mUserInfo;
45 public:
48 void onSuccess(const resip::Data& rpid);
49 void onAccessDenied();
50 void onError();
51};
52
53
54}
55
56#endif
57
58#endif
59
60/* ====================================================================
61 *
62 * Copyright (c) 2026 SIP Spectrum, Inc. https://www.sipspectrum.com
63 * Copyright 2013 Daniel Pocock http://danielpocock.com
64 * All rights reserved.
65 *
66 * Redistribution and use in source and binary forms, with or without
67 * modification, are permitted provided that the following conditions
68 * are met:
69 *
70 * 1. Redistributions of source code must retain the above copyright
71 * notice, this list of conditions and the following disclaimer.
72 *
73 * 2. Redistributions in binary form must reproduce the above copyright
74 * notice, this list of conditions and the following disclaimer in
75 * the documentation and/or other materials provided with the
76 * distribution.
77 *
78 * 3. Neither the name of the author(s) nor the names of any contributors
79 * may be used to endorse or promote products derived from this software
80 * without specific prior written permission.
81 *
82 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS "AS IS" AND
83 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
84 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
85 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE
86 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
87 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
88 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
89 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
90 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
91 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
92 * SUCH DAMAGE.
93 *
94 * ====================================================================
95 *
96 *
97 */
98
Represents the "credentials" and "challenge" elements in the SIP grammar.
Definition Auth.hxx:18
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
Definition Data.hxx:90
The base-class for an RFC 3261 Transaction User.
This Class is used to implement a primitive form of RPC using loose XML formatting.
dcm! – add UnusedChecking(_enum) below;
void list()
Definition userAdmin.cxx:66