www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - HTTPS server framework

reply Alberto <reda zioale.it> writes:
Someone have coded an HTTPS server framework? (maybe extending the mango
HTTP server framework...)
If not I will try to use the libgnunet crypto utils (gnunet has a
node-to-node protocol that is "ssl-like") to extend mango HTTP server
(RSA with 2048 bit keys to start a connection and send the symmetric
cipher key, and AES-256 with 256 bit keys for all communication between
client and server).
libgnunet is a well coded C library with some usefull (and easy to use)
function to do that.(I believe that it's simpler for me calling a well
tested C library, instead of coding a new one in D from scratch).
But, before start to work on it, I want to know if the library is
"usable" or not from D.

in symcipher_gcrypt.c:

 * Note that the code locks often needlessly on the gcrypt-locking api.
 * One would think that simple MPI operations should not require locking
 * (since only global operations on the random pool must be locked,
 * strictly speaking).  But libgcrypt does sometimes require locking in
 * unexpected places, so the safe solution is to always lock even if it
 * is not required.  The performance impact is minimal anyway.


static struct MUTEX * gcrypt_shared_lock;

void lockGcrypt() {
  MUTEX_LOCK(gcrypt_shared_lock);
}

void unlockGcrypt() {
  MUTEX_UNLOCK(gcrypt_shared_lock);
}

it use gcrypt library, mutex, ecc, could be a problem? (something like a
 conflict with the D part of my library that already use threads, mutex
and semaphore)
note: I want to use only the crypto functions, not the entire library.
Feb 04 2007
parent kris <foo bar.com> writes:
Alberto wrote:
 Someone have coded an HTTPS server framework? (maybe extending the mango
 HTTP server framework...)
 If not I will try to use the libgnunet crypto utils (gnunet has a
 node-to-node protocol that is "ssl-like") to extend mango HTTP server

That would be wonderful!
Feb 05 2007