*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __G_BASE64_H__
#define __G_BASE64_H__
+#if !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION)
+#error "Only <glib.h> can be included directly."
+#endif
+
#include <glib/gtypes.h>
G_BEGIN_DECLS
-gsize g_base64_encode_step (const guchar *in,
- gsize len,
- gboolean break_lines,
- gchar *out,
- gint *state,
- gint *save);
-gsize g_base64_encode_close (gboolean break_lines,
- gchar *out,
- gint *state,
- gint *save);
-gchar* g_base64_encode (const guchar *data,
- gsize len) G_GNUC_MALLOC;
-gsize g_base64_decode_step (const gchar *in,
- gsize len,
- guchar *out,
- gint *state,
- guint *save);
-guchar *g_base64_decode (const gchar *text,
- gsize *out_len) G_GNUC_MALLOC;
+GLIB_AVAILABLE_IN_ALL
+gsize g_base64_encode_step (const guchar *in,
+ gsize len,
+ gboolean break_lines,
+ gchar *out,
+ gint *state,
+ gint *save);
+GLIB_AVAILABLE_IN_ALL
+gsize g_base64_encode_close (gboolean break_lines,
+ gchar *out,
+ gint *state,
+ gint *save);
+GLIB_AVAILABLE_IN_ALL
+gchar* g_base64_encode (const guchar *data,
+ gsize len) G_GNUC_MALLOC;
+GLIB_AVAILABLE_IN_ALL
+gsize g_base64_decode_step (const gchar *in,
+ gsize len,
+ guchar *out,
+ gint *state,
+ guint *save);
+GLIB_AVAILABLE_IN_ALL
+guchar *g_base64_decode (const gchar *text,
+ gsize *out_len) G_GNUC_MALLOC;
+GLIB_AVAILABLE_IN_ALL
+guchar *g_base64_decode_inplace (gchar *text,
+ gsize *out_len);
+
G_END_DECLS