gsasl  1.8.0
tokens.c
Go to the documentation of this file.
00001 /* tokens.c --- Free allocated data in SCRAM tokens.
00002  * Copyright (C) 2009-2012 Simon Josefsson
00003  *
00004  * This file is part of GNU SASL Library.
00005  *
00006  * GNU SASL Library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public License
00008  * as published by the Free Software Foundation; either version 2.1 of
00009  * the License, or (at your option) any later version.
00010  *
00011  * GNU SASL Library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with GNU SASL Library; if not, write to the Free
00018  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019  * Boston, MA 02110-1301, USA.
00020  *
00021  */
00022 
00023 /* Get prototypes. */
00024 #include "tokens.h"
00025 
00026 /* Get free. */
00027 #include <stdlib.h>
00028 
00029 /* Get memset. */
00030 #include <string.h>
00031 
00032 void
00033 scram_free_client_first (struct scram_client_first *cf)
00034 {
00035   free (cf->cbname);
00036   free (cf->authzid);
00037   free (cf->username);
00038   free (cf->client_nonce);
00039 
00040   memset (cf, 0, sizeof (*cf));
00041 }
00042 
00043 void
00044 scram_free_server_first (struct scram_server_first *sf)
00045 {
00046   free (sf->nonce);
00047   free (sf->salt);
00048 
00049   memset (sf, 0, sizeof (*sf));
00050 }
00051 
00052 void
00053 scram_free_client_final (struct scram_client_final *cl)
00054 {
00055   free (cl->cbind);
00056   free (cl->nonce);
00057   free (cl->proof);
00058 
00059   memset (cl, 0, sizeof (*cl));
00060 }
00061 
00062 void
00063 scram_free_server_final (struct scram_server_final *sl)
00064 {
00065   free (sl->verifier);
00066 
00067   memset (sl, 0, sizeof (*sl));
00068 }