Statistics
| Branch: | Tag: | Revision:

root / libsylph / base64.h @ 8d7dcace

History | View | Annotate | Download (1.34 KB)

1
/*
2
 * LibSylph -- E-Mail client library
3
 * Copyright (C) 1999-2005 Hiroyuki Yamamoto
4
 *
5
 * This library is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU Lesser General Public
7
 * License as published by the Free Software Foundation; either
8
 * version 2.1 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
 * Lesser General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU Lesser General Public
16
 * License along with this library; if not, write to the Free Software
17
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
 */
19

    
20
#ifndef __BASE64_H__
21
#define __BASE64_H__
22

    
23
#include <glib.h>
24

    
25
typedef struct _Base64Decoder        Base64Decoder;
26

    
27
struct _Base64Decoder
28
{
29
        gint buf_len;
30
        gchar buf[4];
31
};
32

    
33
void base64_encode        (gchar                *out,
34
                         const guchar        *in,
35
                         gint                 inlen);
36
gint base64_decode        (guchar                *out,
37
                         const gchar        *in,
38
                         gint                 inlen);
39

    
40
Base64Decoder *base64_decoder_new        (void);
41
void               base64_decoder_free        (Base64Decoder        *decoder);
42
gint               base64_decoder_decode        (Base64Decoder        *decoder,
43
                                         const gchar        *in,
44
                                         guchar                *out);
45

    
46
#endif /* __BASE64_H__ */