1 /* gbase64.h - Base64 coding functions 2 * 3 * Copyright (C) 2005 Alexander Larsson <alexl@redhat.com> 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Library General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Library General Public License for more details. 14 * 15 * You should have received a copy of the GNU Library General Public 16 * License along with this library; if not, write to the 17 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 * Boston, MA 02111-1307, USA. 19 */ 20 21 #if defined(G_DISABLE_SINGLE_INCLUDES) && !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION) 22 #error "Only <glib.h> can be included directly." 23 #endif 24 25 #ifndef __G_BASE64_H__ 26 #define __G_BASE64_H__ 27 28 #include <glib/gtypes.h> 29 30 G_BEGIN_DECLS 31 32 gsize g_base64_encode_step (const guchar *in, 33 gsize len, 34 gboolean break_lines, 35 gchar *out, 36 gint *state, 37 gint *save); 38 gsize g_base64_encode_close (gboolean break_lines, 39 gchar *out, 40 gint *state, 41 gint *save); 42 gchar* g_base64_encode (const guchar *data, 43 gsize len) G_GNUC_MALLOC; 44 gsize g_base64_decode_step (const gchar *in, 45 gsize len, 46 guchar *out, 47 gint *state, 48 guint *save); 49 guchar *g_base64_decode (const gchar *text, 50 gsize *out_len) G_GNUC_MALLOC; 51 guchar *g_base64_decode_inplace (gchar *text, 52 gsize *out_len); 53 54 55 G_END_DECLS 56 57 #endif /* __G_BASE64_H__ */ 58