-skeletons for transport-ng
[oweals/gnunet.git] / src / include / gnunet_connection_lib.h
index 1fe00f62cea0367d87c9c78d5110198d178e3e8b..e9dd95d1b0e77073f9a0e6b7166e407d816fc60f 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     Copyright (C) 2009 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2009 GNUnet e.V.
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
 */
 
 /**
- * @file include/gnunet_connection_lib.h
- * @brief basic, low-level TCP networking interface
  * @author Christian Grothoff
+ *
+ * @file include/gnunet_connection_lib.h
+ * Basic, low-level TCP networking interface
+ *
+ * @defgroup connection  Connection library
+ * Basic, low-level TCP networking interface
+ * @{
  */
 #ifndef GNUNET_CONNECTION_LIB_H
 #define GNUNET_CONNECTION_LIB_H
@@ -359,6 +364,26 @@ GNUNET_CONNECTION_notify_transmit_ready_cancel (struct
                                                 *th);
 
 
+/**
+ * Create a connection to be proxied using a given connection.
+ *
+ * @param cph connection to proxy server
+ * @return connection to be proxied
+ */
+struct GNUNET_CONNECTION_Handle *
+GNUNET_CONNECTION_create_proxied_from_handshake (struct GNUNET_CONNECTION_Handle *cph);
+
+
+/**
+ * Activate proxied connection and destroy initial proxy handshake connection.
+ * There must not be any pending requests for reading or writing to the
+ * proxy hadshake connection at this time.
+ *
+ * @param proxied connection connection to proxy server
+ */
+void
+GNUNET_CONNECTION_acivate_proxied (struct GNUNET_CONNECTION_Handle *proxied);
+
 
 #if 0                           /* keep Emacsens' auto-indent happy */
 {
@@ -367,7 +392,9 @@ GNUNET_CONNECTION_notify_transmit_ready_cancel (struct
 }
 #endif
 
-
 /* ifndef GNUNET_CONNECTION_LIB_H */
 #endif
+
+/** @} */  /* end of group */
+
 /* end of gnunet_connection_lib.h */