Branch data Line data Source code
1 : : /* tokens.c --- Free allocated data in SCRAM tokens.
2 : : * Copyright (C) 2009-2012 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 along with GNU SASL Library; if not, write to the Free
18 : : * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 : : * Boston, MA 02110-1301, USA.
20 : : *
21 : : */
22 : :
23 : : /* Get prototypes. */
24 : : #include "tokens.h"
25 : :
26 : : /* Get free. */
27 : : #include <stdlib.h>
28 : :
29 : : /* Get memset. */
30 : : #include <string.h>
31 : :
32 : : void
33 : 104 : scram_free_client_first (struct scram_client_first *cf)
34 : : {
35 : 104 : free (cf->cbname);
36 : 104 : free (cf->authzid);
37 : 104 : free (cf->username);
38 : 104 : free (cf->client_nonce);
39 : :
40 : 104 : memset (cf, 0, sizeof (*cf));
41 : 104 : }
42 : :
43 : : void
44 : 104 : scram_free_server_first (struct scram_server_first *sf)
45 : : {
46 : 104 : free (sf->nonce);
47 : 104 : free (sf->salt);
48 : :
49 : 104 : memset (sf, 0, sizeof (*sf));
50 : 104 : }
51 : :
52 : : void
53 : 104 : scram_free_client_final (struct scram_client_final *cl)
54 : : {
55 : 104 : free (cl->cbind);
56 : 104 : free (cl->nonce);
57 : 104 : free (cl->proof);
58 : :
59 : 104 : memset (cl, 0, sizeof (*cl));
60 : 104 : }
61 : :
62 : : void
63 : 104 : scram_free_server_final (struct scram_server_final *sl)
64 : : {
65 : 104 : free (sl->verifier);
66 : :
67 : 104 : memset (sl, 0, sizeof (*sl));
68 : 104 : }
|