Implement prompt password return via encryption.
authorStef Walter <stef@memberwebs.com>
Tue, 3 Nov 2009 03:06:44 +0000 (03:06 +0000)
committerStef Walter <stef@memberwebs.com>
Thu, 5 Nov 2009 05:53:55 +0000 (05:53 +0000)
* Prompt password encrypted return via DH key negotiation.
 * Factor out some common code between prompt-tool and daemon.
 * Add tests for common code.

egg/Makefile.am
egg/egg-dh.c
egg/egg-dh.h

index 1fe0015..5407b73 100644 (file)
@@ -5,6 +5,7 @@ noinst_LTLIBRARIES = \
        libegg-creds.la \
        libegg-dbus.la \
        libegg-secure.la \
+       libegg-prompt.la \
        libegg-secure-entry.la
 
 BUILT_SOURCES = \
@@ -77,6 +78,21 @@ libegg_dbus_la_LIBADD = \
        $(DBUS_LIBS) \
        $(GLIB_LIBS)
 
+libegg_prompt_la_SOURCES = \
+       egg-dh.c egg-dh.h \
+       egg-hex.c egg-hex.h \
+       egg-libgcrypt.c egg-libgcrypt.h \
+       egg-secure-memory.c egg-secure-memory.h
+
+libegg_prompt_la_CFLAGS = \
+       -DEGG_DH_NO_ASN1=1 \
+       $(LIBGCRYPT_CFLAGS) \
+       $(GLIB_CFLAGS)
+
+libegg_prompt_la_LIBS = \
+       $(LIBGCRYPT_LIBS) \
+       $(GLIB_LIBS)
+
 # -------------------------------------------------------------------
 
 if WITH_TESTS
index ba917b4..ccb2243 100644 (file)
@@ -107,6 +107,8 @@ typedef struct _Parameters {
        gcry_mpi_t g;
 } Parameters;
 
+#ifndef EGG_DH_NO_ASN1
+
 static gboolean
 parse_der_pkcs3 (const guchar *data, gsize n_data, Parameters *params)
 {
@@ -165,3 +167,5 @@ egg_dh_parse_pkcs3 (const guchar *data, gsize n_data, gcry_mpi_t *p, gcry_mpi_t
        *g = params.g;
        return TRUE;
 }
+
+#endif /* EGG_DH_NO_ASN1 */
index fd09bbc..eb7959d 100644 (file)
@@ -32,6 +32,8 @@ gboolean   egg_dh_gen_secret       (gcry_mpi_t p, gcry_mpi_t g, gcry_mpi_t *X, g
 
 gboolean   egg_dh_gen_key          (gcry_mpi_t Y, gcry_mpi_t x, gcry_mpi_t p, gcry_mpi_t *k);
 
+#ifndef EGG_DH_NO_ASN1
 gboolean   egg_dh_parse_pkcs3      (const guchar *data, gsize n_data, gcry_mpi_t *p, gcry_mpi_t *g);
+#endif
 
 #endif /* EGG_DH_H_ */