shill: Implement a DES-CBC crypto module.

This module will be used to encrypt/decrypt persistent store values.

BUG=chromium-os:16965
TEST=unit tests

Change-Id: I1c1112f1d14cb24d44a1fe8080e54a08579c42e3
Reviewed-on: http://gerrit.chromium.org/gerrit/3336
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
diff --git a/glib.cc b/glib.cc
index 51ee0cd..998aa43 100644
--- a/glib.cc
+++ b/glib.cc
@@ -20,6 +20,14 @@
   return message;
 }
 
+guchar *GLib::Base64Decode(const gchar *text, gsize *out_len) {
+  return g_base64_decode(text, out_len);
+}
+
+gchar *GLib::Base64Encode(const guchar *data, gsize len) {
+  return g_base64_encode(data, len);
+}
+
 guint GLib::ChildWatchAdd(GPid pid,
                           GChildWatchFunc function,
                           gpointer data) {