Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

token.h

Go to the documentation of this file.
00001 /*
00002  * $Id: token.h,v 1.5 2005/08/17 13:44:05 cbiere Exp $
00003  *
00004  * Copyright (c) 2003, Raphael Manfredi
00005  *
00006  *----------------------------------------------------------------------
00007  * This file is part of gtk-gnutella.
00008  *
00009  *  gtk-gnutella is free software; you can redistribute it and/or modify
00010  *  it under the terms of the GNU General Public License as published by
00011  *  the Free Software Foundation; either version 2 of the License, or
00012  *  (at your option) any later version.
00013  *
00014  *  gtk-gnutella is distributed in the hope that it will be useful,
00015  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  *  GNU General Public License for more details.
00018  *
00019  *  You should have received a copy of the GNU General Public License
00020  *  along with gtk-gnutella; if not, write to the Free Software
00021  *  Foundation, Inc.:
00022  *      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00023  *----------------------------------------------------------------------
00024  */
00025 
00036 #ifndef _core_token_h_
00037 #define _core_token_h_
00038 
00039 #include <glib.h>
00040 #include "lib/host_addr.h"
00041 
00042 #define TOKEN_VERSION_SIZE  (4 + 3 + 20)    
00043 #define TOKEN_START_DATE    1045868400      
00048 typedef enum {
00049     TOK_OK = 0,                 
00050     TOK_BAD_LENGTH,             
00051     TOK_BAD_STAMP,              
00052     TOK_BAD_INDEX,              
00053     TOK_INVALID,                
00054     TOK_BAD_ENCODING,           
00055     TOK_BAD_KEYS,               
00056     TOK_BAD_VERSION,            
00057     TOK_OLD_VERSION,            
00058     TOK_BAD_LEVEL_ENCODING,     
00059     TOK_BAD_LEVEL_LENGTH,       
00060     TOK_SHORT_LEVEL,            
00061     TOK_INVALID_LEVEL,          
00062     TOK_MISSING_LEVEL           
00063 } tok_error_t;
00064 
00065 /*
00066  * Public interface.
00067  */
00068 
00069 const gchar *tok_strerror(tok_error_t errnum);
00070 gchar *tok_version(void);
00071 gchar *tok_short_version(void);
00072 tok_error_t tok_version_valid(
00073     const gchar *version, const gchar *tokenb64, gint len, host_addr_t addr);
00074 gboolean tok_is_ancient(time_t now);
00075 
00076 #endif  /* _core_token_h_ */
00077 
00078 /* vi: set ts=4 sw=4 cindent: */

Generated on Sun Feb 12 10:49:57 2006 for Gtk-Gnutella by doxygen 1.3.6