gsasl
2.2.0
About: GNU
SASL
is an implementation of the Simple Authentication and Security Layer (SASL).
Fossies
Dox
:
gsasl-2.2.0.tar.gz
("unofficial" and yet experimental doxygen-generated source code documentation)
Loading...
Searching...
No Matches
done.c
Go to the documentation of this file.
1
/* done.c --- Exit point for libgsasl.
2
* Copyright (C) 2002-2022 Simon Josefsson
3
*
4
* This file is part of GNU SASL Library.
5
*
6
* GNU SASL Library is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public License
8
* as published by the Free Software Foundation; either version 2.1 of
9
* the License, or (at your option) any later version.
10
*
11
* GNU SASL Library is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License License along with GNU SASL Library; if not, write to the
18
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19
* Boston, MA 02110-1301, USA.
20
*
21
*/
22
23
#include "
internal.h
"
24
25
/**
26
* gsasl_done:
27
* @ctx: libgsasl handle.
28
*
29
* This function destroys a libgsasl handle. The handle must not be
30
* used with other libgsasl functions after this call.
31
**/
32
void
33
gsasl_done
(
Gsasl
* ctx)
34
{
35
size_t
i;
36
37
if
(ctx == NULL)
38
return
;
39
40
#ifdef USE_CLIENT
41
for
(i = 0; i < ctx->
n_client_mechs
; i++)
42
if
(ctx->
client_mechs
[i].
client
.
done
)
43
ctx->
client_mechs
[i].
client
.
done
(ctx);
44
45
free
(ctx->
client_mechs
);
46
#endif
47
48
#ifdef USE_SERVER
49
for
(i = 0; i < ctx->
n_server_mechs
; i++)
50
if
(ctx->
server_mechs
[i].
server
.
done
)
51
ctx->
server_mechs
[i].
server
.
done
(ctx);
52
53
free
(ctx->
server_mechs
);
54
#endif
55
56
free
(ctx);
57
58
return
;
59
}
gsasl_done
void gsasl_done(Gsasl *ctx)
Definition:
done.c:33
free
_GL_EXTERN_C void free(void *)
internal.h
Gsasl_mechanism_functions::done
Gsasl_done_function done
Definition:
gsasl-mech.h:154
Gsasl_mechanism::server
struct Gsasl_mechanism_functions server
Definition:
gsasl-mech.h:176
Gsasl_mechanism::client
struct Gsasl_mechanism_functions client
Definition:
gsasl-mech.h:175
Gsasl
Definition:
internal.h:41
Gsasl::n_client_mechs
size_t n_client_mechs
Definition:
internal.h:42
Gsasl::server_mechs
Gsasl_mechanism * server_mechs
Definition:
internal.h:45
Gsasl::client_mechs
Gsasl_mechanism * client_mechs
Definition:
internal.h:43
Gsasl::n_server_mechs
size_t n_server_mechs
Definition:
internal.h:44
lib
src
done.c
Generated by
1.9.6