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.h b/glib.h
index 186c075..e65eb7d 100644
--- a/glib.h
+++ b/glib.h
@@ -19,6 +19,10 @@
   // Converts GLib's |error| to a string message and frees the GError object.
   virtual std::string ConvertErrorToMessage(GError *error);
 
+  // g_base64_decode
+  virtual guchar *Base64Decode(const gchar *text, gsize *out_len);
+  // g_base64_encode
+  virtual gchar *Base64Encode(const guchar *data, gsize len);
   // g_child_watch_add
   virtual guint ChildWatchAdd(GPid pid,
                               GChildWatchFunc function,