Statistics
| Branch: | Tag: | Revision:

root / libsylph / base64.h @ master

History | View | Annotate | Download (635 Bytes)

1 8d7dcace Hiroyuki Yamamoto
/*
2 8d7dcace Hiroyuki Yamamoto
 * LibSylph -- E-Mail client library
3 aebfd4cc Hiroyuki Yamamoto
 * Copyright (C) 1999-2011 Hiroyuki Yamamoto
4 8d7dcace Hiroyuki Yamamoto
 */
5 8d7dcace Hiroyuki Yamamoto
6 8d7dcace Hiroyuki Yamamoto
#ifndef __BASE64_H__
7 8d7dcace Hiroyuki Yamamoto
#define __BASE64_H__
8 8d7dcace Hiroyuki Yamamoto
9 8d7dcace Hiroyuki Yamamoto
#include <glib.h>
10 8d7dcace Hiroyuki Yamamoto
11 8d7dcace Hiroyuki Yamamoto
typedef struct _Base64Decoder        Base64Decoder;
12 8d7dcace Hiroyuki Yamamoto
13 8d7dcace Hiroyuki Yamamoto
struct _Base64Decoder
14 8d7dcace Hiroyuki Yamamoto
{
15 8d7dcace Hiroyuki Yamamoto
        gint buf_len;
16 8d7dcace Hiroyuki Yamamoto
        gchar buf[4];
17 8d7dcace Hiroyuki Yamamoto
};
18 8d7dcace Hiroyuki Yamamoto
19 8d7dcace Hiroyuki Yamamoto
void base64_encode        (gchar                *out,
20 8d7dcace Hiroyuki Yamamoto
                         const guchar        *in,
21 8d7dcace Hiroyuki Yamamoto
                         gint                 inlen);
22 8d7dcace Hiroyuki Yamamoto
gint base64_decode        (guchar                *out,
23 8d7dcace Hiroyuki Yamamoto
                         const gchar        *in,
24 8d7dcace Hiroyuki Yamamoto
                         gint                 inlen);
25 8d7dcace Hiroyuki Yamamoto
26 8d7dcace Hiroyuki Yamamoto
Base64Decoder *base64_decoder_new        (void);
27 8d7dcace Hiroyuki Yamamoto
void               base64_decoder_free        (Base64Decoder        *decoder);
28 8d7dcace Hiroyuki Yamamoto
gint               base64_decoder_decode        (Base64Decoder        *decoder,
29 8d7dcace Hiroyuki Yamamoto
                                         const gchar        *in,
30 8d7dcace Hiroyuki Yamamoto
                                         guchar                *out);
31 8d7dcace Hiroyuki Yamamoto
32 8d7dcace Hiroyuki Yamamoto
#endif /* __BASE64_H__ */