*
* Some additional documentation can be found under [Files](files.html), in the src/include/ directory.
*
- * See also the [handbooks](https://gnunet.org/handbooks) for installation, users, and developers.
+ * See also the [handbooks](https://gnunet.org/handbooks) on installation, and for user and developer documentation.
*/
*/
/**
+ * @author Christian Grothoff
+ *
* @file
* DNS network structs
*
- * @author Christian Grothoff
+ * @defgroup block-dns DNS Service network protocol definitions
+ * @{
*/
#ifndef BLOCK_DNS_H
#define BLOCK_DNS_H
GNUNET_NETWORK_STRUCT_END
#endif
+
+/** @} */ /* end of group */
*/
/**
+ * @author Christian Grothoff
+ *
* @file
* FS block formats (shared between FS and Block)
*
- * @author Christian Grothoff
+ * @defgroup block-fs FS block formats
+ * Shared between the [FS service](@ref fs) and the [Block library](@ref block).
+ * @{
*/
#ifndef BLOCK_FS_H
#define BLOCK_FS_H
GNUNET_NETWORK_STRUCT_END
#endif
+
+/** @} */ /* end of group */
*/
/**
+ * @author Christian Grothoff
+ *
* @file
* Constants for network applications operating on top of the CADET service
*
- * @author Christian Grothoff
+ * @defgroup applications CADET application definitions
+ * Constants for network applications operating on top of the CADET service.
+ * @{
*/
#ifndef GNUNET_APPLICATIONS_H
/* ifndef GNUNET_APPLICATIONS_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_applications.h */
void
GNUNET_ARM_monitor_disconnect_and_free (struct GNUNET_ARM_MonitorHandle *h);
-/** @} */ /* end of group */
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
unsigned long long in_quota[GNUNET_ATS_NetworkTypeCount];
};
-/** @} */ /* end of group */
-
#endif
+
+/** @} */ /* end of group */
* @author Matthias Wachs
*
* @defgroup ats ATS service
- * Automatic transport selection and outbound bandwidth determination
+ * Automatic Transport Selection and outbound bandwidth determination
* @{
*/
#ifndef GNUNET_ATS_SERVICE_H
const struct GNUNET_TIME_Relative scope,
...);
+#endif
+
/** @} */ /* end of group */
-#endif
/* end of file gnunet-service-transport_ats.h */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_BANDWIDTH_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_bandwidth_lib.h */
#endif
/**
- * @ingroup bio
* Handle for buffered reading.
*/
struct GNUNET_BIO_ReadHandle;
}
#endif
-/** @} */ /* end of group bio */
-
/* ifndef GNUNET_BIO_LIB_H */
#endif
+
+/** @} */ /* end of group bio */
+
/* end of gnunet_bio_lib.h */
}
#endif
-/** @} */ /* end of group */
-
-
/* ifndef GNUNET_BLOCK_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_block_lib.h */
* @author Christian Grothoff
*
* @file
- * API for block plugins. Each block plugin must conform to the API specified by this header.
+ * API for block plugins.
*
* @defgroup block-plugin Block plugin API
* To be implemented by applications storing data in the DHT.
};
-/** @} */ /* end of group block */
-
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_CADET_SERVICE_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_cadet_service.h */
}
#endif
-/** @} */ /* end of group client */
-
/* ifndef GNUNET_CLIENT_LIB_H */
#endif
+
+/** @} */ /* end of group client */
+
/* end of gnunet_client_lib.h */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_CLIENT_MANAGER_LIB_H */
#endif
-/* end of gnunet_client_manager_lib.h */
+
+/** @} */ /* end of group */
}
#endif
-
-
-
-#endif /*GNUNET_COMMON_H_ */
+#endif /* GNUNET_COMMON_H */
const char *option,
const char *value);
-/** @} */ /* end of group configuration */
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group configuration */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_CONNECTION_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_connection_lib.h */
void
GNUNET_CONSENSUS_destroy (struct GNUNET_CONSENSUS_Handle *consensus);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
+
+/** @} */ /* end of group */
* @author Christian Grothoff
*
* @file
- * "Global" constants for performance tuning
+ * Global constants for performance tuning
+ *
+ * @defgroup constants Constant definitions
+ * Global constants for performance tuning
+ * @{
*/
#ifndef GNUNET_CONSTANTS_H
#endif
#endif
+
+/** @} */ /* end of group */
void
GNUNET_CONVERSATION_call_stop (struct GNUNET_CONVERSATION_Call *call);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group core */
-
/* ifndef GNUNET_CORE_SERVICE_H */
#endif
+
+/** @} */ /* end of group core */
+
/* end of gnunet_core_service.h */
* @file
* datacache API
*
- * @defgroup datacache Datacache library
+ * @defgroup datacache Data Cache library
* Simple, transient hash table of bounded size with content expiration.
*
* In contrast to the sqstore there is
GNUNET_DATACACHE_Iterator iter,
void *iter_cls);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-/* end of gnunet_datacache_lib.h */
#endif
+
+/** @} */ /* end of group */
* @file
* API for database backends for the datacache
*
- * @defgroup datacache-plugin Datacache plugin API
+ * @defgroup datacache-plugin Data Cache plugin API
* API for database backends for the datacache
* @{
*/
};
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-/* end of gnunet_datacache_plugin.h */
#endif
+
+/** @} */ /* end of group */
* @file
* API for the database backend plugins.
*
- * @defgroup datastore-plugin Datastore service plugin API
+ * @defgroup datastore-plugin Data Store service plugin API
* API for the database backend plugins.
* @{
*/
};
-/** @} */ /* end of group */
-
#endif
+
+/** @} */ /* end of group */
* @file
* datastore service
*
- * @defgroup datastore Datastore service
+ * @defgroup datastore Data Store service
* Data store for files stored on a GNUnet node.
*
* Provides an API that can be used manage the
void
GNUNET_DATASTORE_cancel (struct GNUNET_DATASTORE_QueueEntry *qe);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-/* end of gnunet_datastore_service.h */
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group dht */
-
-
#endif
-/* gnunet_dht_service.h */
+
+/** @} */ /* end of group dht */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_DISK_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_disk_lib.h */
void
GNUNET_DNS_disconnect (struct GNUNET_DNS_Handle *dh);
-/** @} */ /* end of group */
#endif
+
+/** @} */ /* end of group */
GNUNET_DNSPARSER_hex_to_bin (const char *hex,
void *data);
-/** @} */ /* end of group */
#endif
+
+/** @} */ /* end of group */
* @file
* API for helper library to send DNS requests to DNS resolver
*
- * @defgroup dns-stub DNS stub library
+ * @defgroup dns-stub DNS Stub library
* Helper library to send DNS requests to DNS resolver
* @{
*/
void
GNUNET_DNSSTUB_resolve_cancel (struct GNUNET_DNSSTUB_RequestSocket *rs);
-/** @} */ /* end of group */
#endif
+
+/** @} */ /* end of group */
* DV service API (should only be used by the DV plugin)
*
* @defgroup dv DV service
- * Distance vector routing
+ * Distance Vector routing
*
* The DV service API should only be used by the DV plugin.
* @{
void
GNUNET_DV_send_cancel (struct GNUNET_DV_TransmitHandle *th);
-/** @} */ /* end of group */
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group */
-
/* ifndef GNUNET_ENV_LIB_H */
#endif
-/* end of gnunet_env_lib.h */
+
+/** @} */ /* end of group */
const struct GNUNET_MessageHeader *msg);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-/* end of gnunet_fragmentation_lib.h */
#endif
+
+/** @} */ /* end of group */
GNUNET_FRIENDS_write (struct GNUNET_FRIENDS_Writer *w,
const struct GNUNET_PeerIdentity *friend_id);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
+
+/** @} */ /* end of group */
void
GNUNET_FS_share_tree_free (struct GNUNET_FS_ShareTreeItem *toplevel);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group getopt */
-
/* ifndef GNUNET_GETOPT_LIB_H */
#endif
+
+/** @} */ /* end of group getopt */
+
/* end of gnunet_getopt_lib.h */
void
GNUNET_GNS_lookup_cancel (struct GNUNET_GNS_LookupRequest *lr);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-
#endif
-/* gnunet_gns_service.h */
+
+/** @} */ /* end of group */
* @file
* API that can be used to manipulate GNS record data
*
- * @defgroup gns-record GNS record library
+ * @defgroup gns-record GNS Record library
* Manipulate GNS record data
* @{
*/
GNUNET_GNSRECORD_record_get_expiration_time (unsigned int rd_count,
const struct GNUNET_GNSRECORD_Data *rd);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
+
+/** @} */ /* end of group */
struct GNUNET_HELLO_Message **hello,
GNUNET_HELLO_TransportPluginsFind plugins_find);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-
/* ifndef GNUNET_HELLO_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_hello_lib.h */
void
GNUNET_HELPER_send_cancel (struct GNUNET_HELPER_SendHandle *sh);
-/** @} */ /* end of group */
#endif
/* end of include guard: GNUNET_HELPER_LIB_H */
+
+/** @} */ /* end of group */
* @file
* Identity provider service; implements identity provider for GNUnet
*
- * @defgroup identity-provider Identity provider service
+ * @defgroup identity-provider Identity Provider service
* @{
*/
#ifndef GNUNET_IDENTITY_PROVIDER_SERVICE_H
}
#endif
-/** @} */ /* end of group identity */
/* ifndef GNUNET_IDENTITY_PROVIDER_SERVICE_H */
#endif
+
+/** @} */ /* end of group identity */
+
/* end of gnunet_identity_provider_service.h */
}
#endif
-/** @} */ /* end of group identity */
-
/* ifndef GNUNET_IDENTITY_SERVICE_H */
#endif
+
+/** @} */ /* end of group identity */
+
/* end of gnunet_identity_service.h */
void
GNUNET_LOAD_update (struct GNUNET_LOAD_Value *load, uint64_t data);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
/* ifndef GNUNET_LOAD_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_load_lib.h */
void
GNUNET_MICROPHONE_destroy (struct GNUNET_MICROPHONE_Handle *microphone);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_microphone_lib.h */
GNUNET_MQ_impl_state (struct GNUNET_MQ_Handle *mq);
-/** @} */ /* end of group mq */
-
#endif
+
+/** @} */ /* end of group mq */
void
GNUNET_MULTICAST_member_to_origin_cancel (struct GNUNET_MULTICAST_MemberTransmitHandle *th);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
/* ifndef GNUNET_MULTICAST_SERVICE_H */
#endif
-/* end of gnunet_multicast_service.h */
+
+/** @} */ /* end of group */
struct GNUNET_MYSQL_StatementHandle *sh,
unsigned long long *insert_id, ...);
-/** @} */ /* end of group */
#if 0 /* keep Emacsens' auto-indent happy */
{
}
#endif
-/* end of gnunet_mysql_lib.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_namecache_plugin.h
- * @brief plugin API for the namecache database backend
* @author Christian Grothoff
+ *
+ * @file
+ * Plugin API for the namecache database backend
+ *
+ * @defgroup namecache-plugin Name Cache service plugin API
+ * Plugin API for the namecache database backend.
+ * @{
*/
#ifndef GNUNET_NAMECACHE_PLUGIN_H
#define GNUNET_NAMECACHE_PLUGIN_H
}
#endif
-/* end of gnunet_namecache_plugin.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_namecache_service.h
- * @brief API that can be used to store naming information on a GNUnet node;
- * Naming information can either be records for which this peer/user
- * is authoritative, or blocks which are cached, encrypted naming
- * data from other peers.
* @author Christian Grothoff
+ *
+ * @file
+ * API that can be used to store naming information on a GNUnet node.
+ *
+ * @defgroup namecache Name Cache service
+ * Store naming information on a GNUnet node.
+ *
+ * Naming information can either be records for which this peer/user is
+ * authoritative, or blocks which are cached, encrypted naming data from other
+ * peers.
+ *
+ * @{
*/
#ifndef GNUNET_NAMECACHE_SERVICE_H
#define GNUNET_NAMECACHE_SERVICE_H
}
#endif
-/* end of gnunet_namecache_service.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_namestore_plugin.h
- * @brief plugin API for the namestore database backend
* @author Christian Grothoff
+ *
+ * @file
+ * Plugin API for the namestore database backend
+ *
+ * @defgroup namestore-plugin Name Store service plugin API
+ * Plugin API for the namestore database backend
+ * @{
*/
#ifndef GNUNET_NAMESTORE_PLUGIN_H
#define GNUNET_NAMESTORE_PLUGIN_H
}
#endif
-/* end of gnunet_namestore_plugin.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_namestore_service.h
- * @brief API that can be used to store naming information on a GNUnet node;
- * Naming information can either be records for which this peer/user
- * is authoritative, or blocks which are cached, encrypted naming
- * data from other peers.
* @author Christian Grothoff
+ *
+ * @file
+ * API that can be used to store naming information on a GNUnet node;
+ *
+ * @defgroup namestore Name Store service
+ * Store naming information on a GNUnet node.
+ *
+ * Naming information can either be records for which this peer/user is
+ * authoritative, or blocks which are cached, encrypted naming data from other
+ * peers.
+ *
+ * @{
*/
#ifndef GNUNET_NAMESTORE_SERVICE_H
#define GNUNET_NAMESTORE_SERVICE_H
GNUNET_NAMESTORE_zone_monitor_stop (struct GNUNET_NAMESTORE_ZoneMonitor *zm);
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
}
#endif
-/* end of gnunet_namestore_service.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_nat_lib.h
- * @brief Library handling UPnP and NAT-PMP port forwarding and
- * external IP address retrieval
* @author Christian Grothoff
* @author Milan Bouchet-Valat
+ *
+ * @file
+ * Library handling UPnP and NAT-PMP port forwarding
+ * and external IP address retrieval
+ *
+ * @defgroup nat NAT library
+ * Library handling UPnP and NAT-PMP port forwarding
+ * and external IP address retrieval
+ *
+ * @{
*/
#ifndef GNUNET_NAT_LIB_H
size_t len);
-
#endif
+/** @} */ /* end of group */
+
/* end of gnunet_nat_lib.h */
*/
/**
- * @file include/gnunet_network_lib.h
- * @brief basic low-level networking interface
* @author Nils Durner
+ *
+ * @file
+ * Basic low-level networking interface
+ *
+ * @defgroup network Network library
+ * Basic low-level networking interface
+ * @{
*/
#ifndef GNUNET_NETWORK_LIB_H
#define GNUNET_NETWORK_LIB_H
#endif
#endif /* GNUNET_NETWORK_LIB_H */
+
+/** @} */ /* end of group */
#define GNUNET_NSE_SERVICE_H_
/**
+ * @author Nathan Evans
+ *
* @file
- * API to retrieve the current network size estimate,
+ * API to retrieve the current network size estimate
+ *
+ * @defgroup nse NSE service
+ * Network Size Estimation
+ *
+ * Provides an API to retrieve the current network size estimate,
* also to register for notifications whenever a new
* network size estimate is calculated.
*
- * @author Nathan Evans
- * @defgroup nse Network size estimation service
* @{
*/
*/
/**
- * @file
- * Low level process routines
- *
* @author Christian Grothoff
* @author Krista Bennett
* @author Gerd Knorr <kraxel@bytesex.org>
* @author Tzvetan Horozov
* @author Milan
*
+ * @file
+ * Low level process routines
+ *
+ * @defgroup os OS library
+ * Low level process routines.
+ *
* This code manages child processes. We can communicate with child
* processes using signals. Because signals are not supported on W32
* and Java (at least not nicely), we can alternatively use a pipe
* termination via signals, and not as a replacement for SIGKILL.
* Thus using pipes to communicate signals should only be enabled if
* the child is a Java process OR if we are on Windoze.
+ *
+ * @{
*/
#ifndef GNUNET_OS_LIB_H
}
#endif
-
/* ifndef GNUNET_OS_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_os_lib.h */
*/
/**
- * @file include/gnunet_peer_lib.h
- * @brief helper library for interning of peer identifiers
* @author Christian Grothoff
+ *
+ * @file
+ * Helper library for interning of peer identifiers
+ *
+ * @defgroup peer Peer library
+ * Helper library for interning of peer identifiers
+ * @{
*/
#ifndef GNUNET_PEER_LIB_H
}
#endif
-
/* ifndef GNUNET_PEER_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_peer_lib.h */
Boston, MA 02110-1301, USA.
*/
/**
- * @file include/gnunet_peerinfo_service.h
- * @brief Code to maintain the list of currently known hosts
- * (in memory structure of data/hosts).
* @author Christian Grothoff
+ *
+ * @file
+ * Maintain the list of currently known hosts
+ *
+ * @defgroup peerinfo Peer Info service
+ * Maintain the list of currently known hosts.
+ *
+ * Holds an in-memory structure of data/hosts.
+ *
+ * @{
*/
#ifndef GNUNET_PEERINFO_SERVICE_H
}
#endif
-
-/* end of gnunet_peerinfo_service.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_peerstore_plugin.h
- * @brief plugin API for the peerstore database backend
* @author Omar Tarabai
+ *
+ * @file
+ * Plugin API for the peerstore database backend
+ *
+ * @defgroup peerstore-plugin Peer Store service plugin API
+ * Plugin API for the peerstore database backend
+ * @{
*/
#ifndef GNUNET_PEERSTORE_PLUGIN_H
#define GNUNET_PEERSTORE_PLUGIN_H
}
#endif
-/* end of gnunet_peerstore_plugin.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_peerstore_service.h
- * @brief API to the peerstore service
* @author Omar Tarabai
+ *
+ * @file
+ * API to the peerstore service
+ *
+ * @defgroup peerstore Peer Store service
+ *
+ * @{
*/
#ifndef GNUNET_PEERSTORE_SERVICE_H
#define GNUNET_PEERSTORE_SERVICE_H
void
GNUNET_PEERSTORE_watch_cancel (struct GNUNET_PEERSTORE_WatchContext *wc);
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_plugin_lib.h
- * @brief plugin loading and unloading
* @author Christian Grothoff
+ *
+ * @file
+ * Plugin loading and unloading
+ *
+ * @defgroup plugin Plugin library
+ * Plugin loading and unloading
+ * @{
*/
#ifndef GNUNET_PLUGIN_LIB_H
}
#endif
-
/* ifndef GNUNET_PLUGIN_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_plugin_lib.h */
Boston, MA 02110-1301, USA.
*/
/**
- * @file include/gnunet_postgres_lib.h
- * @brief library to help with access to a Postgres database
* @author Christian Grothoff
+ *
+ * @file
+ * Helper library to access a PostgreSQL database
+ *
+ * @defgroup postgres PostgreSQL library
+ * Helper library to access a PostgreSQL database.
+ * @{
*/
#ifndef GNUNET_POSTGRES_LIB_H
#define GNUNET_POSTGRES_LIB_H
uint32_t rowid);
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
}
#endif
-/* end of gnunet_postgres_lib.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
+ * @author Christian Grothoff
+ *
* @file
* Functions related to starting programs
*
- * @author Christian Grothoff
- * @defgroup program Functions for writing command-line programs
+ * @defgroup program Program library
+ * Start command-line programs.
* @{
*/
GNUNET_PROGRAM_Main task, void *task_cls);
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
}
#endif
-/** @} */ /* end of group program */
-
/* ifndef GNUNET_PROGRAM_LIB_H */
#endif
+
+/** @} */ /* end of group program */
+
/* end of gnunet_program_lib.h */
*/
/**
- * @file include/gnunet_protocols.h
- * @brief constants for network protocols
* @author Christian Grothoff
- * @defgroup protocols Types of messages used in GNUnet
+ *
+ * @file
+ * Constants for network protocols
+ *
+ * @defgroup protocols Network protocol definitions
+ * Types of messages used in GNUnet.
* @{
*/
}
#endif
-/** @} */ /* end of group protocols */
-
/* ifndef GNUNET_PROTOCOLS_H */
#endif
+
+/** @} */ /* end of group protocols */
+
/* end of gnunet_protocols.h */
*/
/**
- * @file include/gnunet_psyc_service.h
- * @brief PSYC service; high-level access to the PSYC protocol
- * note that clients of this API are NOT expected to
- * understand the PSYC message format, only the semantics!
- * Parsing (and serializing) the PSYC stream format is done
- * within the implementation of the libgnunetpsyc library,
- * and this API deliberately exposes as little as possible
- * of the actual data stream format to the application!
- * @author Christian Grothoff
* @author Gabor X Toth
+ * @author Christian Grothoff
+ *
+ * @file
+ * PSYC service
+ *
+ * @defgroup psyc PSYC service
+ * Send/receive messages in PSYC channels and access the PSYC Store.
+ *
+ * Note that clients of this API are NOT expected to understand the PSYC message
+ * format, only the semantics! Parsing (and serializing) the PSYC stream format
+ * is done within the implementation of the libgnunetpsyc library, and this API
+ * deliberately exposes as little as possible of the actual data stream format
+ * to the application!
*
* NOTE:
- * - this API does not know about psyc's "root" and "places";
- * there is no 'root' in GNUnet-Psyc as we're decentralized;
+ * - this API does not know about PSYC's "root" and "places";
+ * there is no 'root' in GNUnet-PSYC as we're decentralized;
* 'places' and 'persons' are combined within the same
* abstraction, that of a "channel". Channels are identified
* and accessed in this API using a public/private key.
* be called 'PSYC-low', whereas a higher-level API
* implementing defaults for standard methods and
* variables might be called 'PSYC-std' or 'PSYC-high'.
+ *
+ * @{
*/
#ifndef GNUNET_PSYC_SERVICE_H
/* ifndef GNUNET_PSYC_SERVICE_H */
#endif
-/* end of gnunet_psyc_service.h */
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_psyc_service.h
- * @brief PSYC utilities; receiving/transmitting/logging PSYC messages.
* @author Gabor X Toth
+ *
+ * @file
+ * PSYC utilities; receiving/transmitting/logging PSYC messages
+ *
+ * @defgroup psyc-util PSYC Utilities library
+ * Receiving, transmitting, logging PSYC messages.
+ * @{
*/
#ifndef GNUNET_PSYC_UTIL_LIB_H
/* ifndef GNUNET_PSYC_UTIL_LIB_H */
#endif
-/* end of gnunet_psyc_util_lib.h */
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_psycstore_plugin.h
- * @brief plugin API for the PSYCstore database backend
* @author Gabor X Toth
+ *
+ * @file
+ * Plugin API for the PSYCstore database backend
+ *
+ * @defgroup psycstore-plugin PSYC Store plugin API
+ * Plugin API for the PSYC Store database backend
+ * @{
*/
#ifndef GNUNET_PSYCSTORE_PLUGIN_H
#define GNUNET_PSYCSTORE_PLUGIN_H
}
#endif
-/* end of gnunet_psycstore_plugin.h */
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_psycstore_service.h
- * @brief PSYCstore service; implements persistent storage for the PSYC service
* @author Gabor X Toth
* @author Christian Grothoff
+ *
+ * @file
+ * PSYCstore service; implements persistent storage for the PSYC service
+ *
+ * @defgroup psycstore PSYC Store service
+ * Persistent storage for the PSYC service.
+ * @{
*/
#ifndef GNUNET_PSYCSTORE_SERVICE_H
#define GNUNET_PSYCSTORE_SERVICE_H
/* ifndef GNUNET_PSYCSTORE_SERVICE_H */
#endif
-/* end of gnunet_psycstore_service.h */
+
+/** @} */ /* end of group */
Boston, MA 02110-1301, USA.
*/
/**
- * @file include/gnunet_regex_service.h
- * @brief access regex service to advertise capabilities via regex and discover
- * respective peers using matching strings
* @author Maximilian Szengel
* @author Christian Grothoff
+ *
+ * @file
+ * API to access regex service to advertise capabilities via regex and discover
+ * respective peers using matching strings
+ *
+ * @defgroup regex RegEx service
+ * Advertise capabilities via RegEx and discover
+ * respective peers using matching strings.
+ *
+ * @{
*/
#ifndef GNUNET_REGEX_SERVICE_H
#define GNUNET_REGEX_SERVICE_H
}
#endif
-/* end of gnunet_regex_service.h */
#endif
+
+/** @} */ /* end of group */
}
#endif
-/** @} */ /* end of group resolver */
-
/* ifndef GNUNET_RESOLVER_SERVICE_H */
#endif
+
+/** @} */ /* end of group resolver */
+
/* end of gnunet_resolver_service.h */
*/
/**
- * @file include/gnunet_rest_lib.h
- * @brief API for helper library to parse/create REST
* @author Martin Schanzenbach
+ *
+ * @file
+ * API for helper library to parse/create REST
+ *
+ * @defgroup rest REST library
+ * Helper library to parse/create REST
+ * @{
*/
#ifndef GNUNET_REST_LIB_H
#define GNUNET_REST_LIB_H
GNUNET_REST_jsonapi_resource_check_type (const struct JsonApiResource *resource,
const char* type);
-
+
/**
* Create a JSON API primary data
*
struct JsonApiObject*
GNUNET_REST_jsonapi_object_parse (const char* data);
-
+
/**
* Delete a JSON API primary data
*
const struct GNUNET_REST_RestConnectionHandler *handlers,
void *cls);
+
#endif
+
+/** @} */ /* end of group */
*/
/**
* @author Martin Schanzenbach
- * @file include/gnunet_rest_plugin.h
- * @brief GNUnet service REST plugin header
*
+ * @file
+ * GNUnet service REST plugin header
+ *
+ * @defgroup rest-plugin REST plugin for GNUnet services
+ * @{
*/
#ifndef GNUNET_REST_PLUGIN_H
#define GNUNET_REST_PLUGIN_H
/**
* Function to process a REST call
- *
+ *
* @param method the HTTP method called
* @param url the relative url accessed
* @param data the REST data (can be NULL)
}
#endif
-/* end of gnunet_rest_plugin.h */
#endif
+/** @} */ /* end of group */
#define GNUNET_REVOCATION_SERVICE_H_
/**
- * @file include/gnunet_revocation_service.h
- * @brief API to perform and access key revocations
* @author Christian Grothoff
- * @defgroup revocation Key revocation service
+ *
+ * @file
+ * API to perform and access key revocations
+ *
+ * @defgroup revocation Revocation service
+ * Perform and access key revocations.
* @{
*/
}
#endif
-/** @} */ /* end of group revocation */
-
#endif /* GNUNET_REVOCATION_SERVICE_H_ */
+
+/** @} */ /* end of group revocation */
/*
This file is part of GNUnet
- Copyright (C)
+ Copyright (C)
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_rps_service.h
- * @brief API to the rps service
* @author Julius Bünger
+ *
+ * @file
+ * API to the rps service
+ *
+ * @defgroup rps RPS service
+ * Random Peer Sampling
+ * @{
*/
#ifndef GNUNET_RPS_SERVICE_H
#define GNUNET_RPS_SERVICE_H
void
GNUNET_RPS_disconnect (struct GNUNET_RPS_Handle *h);
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_scalarproduct_service.h
- * @brief API to the scalarproduct service
* @author Christian M. Fuchs
* @author Gaurav Kukreja
+ *
+ * @file
+ * API to the scalarproduct service
+ *
+ * @defgroup scalarproduct Scalar Product service
+ *
+ * @{
*/
#ifndef GNUNET_SCALARPRODUCT_SERVICE_H
#define GNUNET_SCALARPRODUCT_SERVICE_H
void
GNUNET_SCALARPRODUCT_cancel (struct GNUNET_SCALARPRODUCT_ComputationHandle *h);
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_scheduler_lib.h
- * @brief API to schedule computations using continuation passing style
* @author Christian Grothoff
- * @defgroup scheduler Event loop (scheduler)
+ *
+ * @file
+ * API to schedule computations using continuation passing style
+ *
+ * @defgroup scheduler Scheduler library
+ * Event loop (scheduler)
+ *
+ * Schedule computations using continuation passing style.
+ *
* @{
*/
void *new_select_cls);
-/** @} */ /* end of group scheduler */
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group scheduler */
*/
/**
- * @file include/gnunet_secretsharing_service.h
- * @brief verifiable additive secret sharing and cooperative decryption
* @author Florian Dold
+ *
+ * @file
+ * Verifiable additive secret sharing and cooperative decryption
+ *
+ * @defgroup secretsharing Secret Sharing service
+ * Verifiable additive secret sharing and cooperative decryption.
+ * @{
*/
#ifndef GNUNET_SECRETSHARING_SERVICE_H
int64_t exponent);
-
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
/*
This file is part of GNUnet
- Copyright (C)
+ Copyright (C)
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_sensor_service.h
- * @brief API to the sensor service
* @author Omar Tarabai
+ *
+ * @file
+ * API to the sensor service
+ *
+ * @defgroup sensor Sensor service
+ *
+ * @{
*/
+
#ifndef GNUNET_SENSOR_SERVICE_H
#define GNUNET_SENSOR_SERVICE_H
int anomalous, GNUNET_SENSOR_Continuation cont,
void *cont_cls);
+
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file sensor/sensor_util_lib.c
- * @brief sensor utilities
* @author Omar Tarabai
+ *
+ * @file
+ * Sensor utilities
+ *
+ * @defgroup sensor Sensor Utilities library
+ *
+ * @{
*/
#ifndef GNUNET_SENSOR_UTIL_LIB_H
/* ifndef GNUNET_SENSOR_UTIL_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_sensor_util_lib.h */
/*
This file is part of GNUnet
- Copyright (C)
+ Copyright (C)
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_sensordashboard_service.h
- * @brief API to the sensordashboard service
* @author Omar Tarabai
+ *
+ * @file
+ * API to the sensordashboard service
+ *
+ * @defgroup sensordashboard Sensor Dashboard service
+ *
+ * @{
*/
#ifndef GNUNET_SENSORDASHBOARD_SERVICE_H
#define GNUNET_SENSORDASHBOARD_SERVICE_H
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_server_lib.h
- * @brief library for building GNUnet network servers
* @author Christian Grothoff
- * @defgroup server Functions for a server that communicates with clients
+ *
+ * @file
+ * Library for building GNUnet network servers
+
+ * @defgroup server Server library
+ * Library for building GNUnet network servers
+ *
+ * Provides functions for a server that communicates with clients.
+ *
* @{
*/
}
#endif
-/** @} */ /* end of group server */
-
/* ifndef GNUNET_SERVER_LIB_H */
#endif
+
+/** @} */ /* end of group server */
+
/* end of gnunet_server_lib.h */
*/
/**
- * @file include/gnunet_service_lib.h
- * @brief functions related to starting services
* @author Christian Grothoff
- * @defgroup service Generic functions for implementing service processes
+ *
+ * @file
+ * Functions related to starting services
+ *
+ * @defgroup service Service library
+ * Start service processes.
* @{
*/
}
#endif
-
-/** @} */ /* end of group service */
-
-
/* ifndef GNUNET_SERVICE_LIB_H */
#endif
+
+/** @} */ /* end of group service */
+
/* end of gnunet_service_lib.h */
*/
/**
- * @file include/gnunet_set_service.h
- * @brief two-peer set operations
* @author Florian Dold
* @author Christian Grothoff
+ *
+ * @file
+ * Two-peer set operations
+ *
+ * @defgroup set Set service
+ * Two-peer set operations
+ * @{
*/
#ifndef GNUNET_SET_SERVICE_H
* Client gets notified of the required changes
* for both the local and the remote set.
*
- * Only supported for set
+ * Only supported for set
*/
GNUNET_SET_RESULT_SYMMETRIC,
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_signal_lib.h
- * @brief functions related to signals
* @author Christian Grothoff
+ *
+ * @file
+ * Functions related to signals
+ *
+ * @defgroup signal Signal library
+ * Manage signal handlers.
+ * @{
*/
#ifndef GNUNET_SIGNAL_LIB_H
/* ifndef GNUNET_SIGNAL_LIB_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_signal_lib.h */
*/
/**
- * @file include/gnunet_signatures.h
- * @brief constants for network signatures
* @author Christian Grothoff
+ *
+ * @file
+ * Constants for network signatures
+ *
+ * @defgroup signatures Network signature definitions
+ * @{
*/
#ifndef GNUNET_SIGNATURES_H
/* ifndef GNUNET_SIGNATURES_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_signatures.h */
GNUNET_ResultCallback result_cb,
void *result_cls);
-/** @} */ /* end of group social */
#if 0 /* keep Emacsens' auto-indent happy */
{
/* ifndef GNUNET_SOCIAL_SERVICE_H */
#endif
-/* end of gnunet_social_service.h */
+
+/** @} */ /* end of group social */
*/
/**
- * @file include/gnunet_socks.h
- * @brief SOCKS proxy for connections
* @author Jeffrey Burdges
+ *
+ * @file
+ * SOCKS proxy for connections
+ *
+ * @defgroup socks SOCKS proxy
+ * SOCKS proxy for connections.
+ * @{
*/
#ifndef GNUNET_SOCKS_H
}
#endif
-
/* ifndef GNUNET_SOCKS_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_socks.h */
*/
/**
- * @file include/gnunet_speaker_lib.h
- * @brief API to access an audio speaker; provides access to hardware speakers
* @author Simon Dieterle
* @author Andreas Fuchs
* @author Christian Grothoff
+ *
+ * @file
+ * API to access an audio speaker; provides access to hardware speakers
+ *
+ * @defgroup speaker Speaker service
+ * Access hardware audio speakers.
+ * @{
*/
#ifndef GNUNET_SPEAKER_SERVICE_H
#define GNUNET_SPEAKER_SERVICE_H
#endif
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_speaker_lib.h */
*/
/**
- * @file include/gnunet_statistics_service.h
- * @brief API to create, modify and access statistics about
- * the operation of GNUnet; all statistical values
- * must be of type `unsigned long long`.
* @author Christian Grothoff
- * @defgroup statistics Track statistics or provide access to statistics
+ *
+ * @file
+ * API to create, modify and access statistics.
+ *
+ * @defgroup statistics Statistics service
+ * Track statistics or provide access to statistics.
+ *
+ * Create, modify and access statistics about the operation of GNUnet.
+ *
+ * All statistical values must be of type `unsigned long long`.
+ *
* @{
*/
*/
/**
- * @file include/gnunet_strings_lib.h
- * @brief strings and string handling functions (including malloc
- * and string tokenizing)
- *
* @author Christian Grothoff
* @author Krista Bennett
* @author Gerd Knorr <kraxel@bytesex.org>
* @author Ioana Patrascu
* @author Tzvetan Horozov
+ *
+ * @file
+ * Strings and string handling functions
+ *
+ * @defgroup strings Strings library
+ * Strings and string handling functions, including malloc and string tokenizing.
+ * @{
*/
#ifndef GNUNET_STRINGS_LIB_H
}
#endif
-
/* ifndef GNUNET_UTIL_STRING_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_util_string.h */
*/
/**
- * @file include/gnunet_testbed_logger_service.h
- * @brief API for submitting data to the testbed logger service
* @author Sree Harsha Totakura <sreeharsha@totakura.in>
+ *
+ * @file
+ * API for submitting data to the testbed logger service
+ *
+ * @defgroup testbed-logger Testbed Logger service
+ * Submit data to the testbed logger service.
+ * @{
*/
#ifndef GNUNET_TESTBED_LOGGER_SERVICE_H
#endif /* GNUNET_TESTBED_LOGGER_SERVICE_H */
+/** @} */ /* end of group */
+
/* End of gnunet_testbed_logger_service.h */
*/
/**
- * @file include/gnunet_testbed_service.h
- * @brief API for writing tests and creating large-scale
- * emulation testbeds for GNUnet.
* @author Christian Grothoff
+ *
+ * @file
+ * API for writing tests and creating large-scale emulation testbeds for GNUnet.
+ *
+ * @defgroup testbed Testbed service
+ * Writing tests and creating large-scale emulation testbeds for GNUnet.
+ * @{
*/
#ifndef GNUNET_TESTBED_SERVICE_H
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_testing_lib.h
- * @brief convenience API for writing testcases for GNUnet;
- * can start/stop one or more peers on a system;
- * testing is responsible for managing private keys,
- * ports and paths; it is a low-level library that
- * does not support higher-level functions such as
- * P2P connection, topology management or distributed
- * testbed maintenance (those are in gnunet_testbed_service.h)
* @author Christian Grothoff
+ *
+ * @file
+ * Convenience API for writing testcases for GNUnet
+ *
+ * @defgroup testing Testing library
+ * Library for writing testcases for GNUnet.
+ *
+ * It can start/stop one or more peers on a system; testing is responsible for
+ * managing private keys, ports and paths; it is a low-level library that does
+ * not support higher-level functions such as P2P connection, topology
+ * management or distributed testbed maintenance (those are provided by the
+ * [Testbed service](@ref testbed))
+ *
+ * @{
*/
#ifndef GNUNET_TESTING_LIB_H
#endif
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_time_lib.h
- * @brief functions related to time
* @author Christian Grothoff
- * @defgroup time Time and time calculations
+ *
+ * @file
+ * Functions related to time
+ *
+ * @defgroup time Time library
+ * Time and time calculations.
* @{
*/
}
#endif
-/** @} */ /* end of group time */
-
-
/* ifndef GNUNET_TIME_LIB_H */
#endif
+
+/** @} */ /* end of group time */
+
/* end of gnunet_time_lib.h */
*/
/**
- * @file include/gnunet_transport_plugin.h
- * @brief API for the transport services. This header
- * specifies the struct that is given to the plugin's entry
- * method and the other struct that must be returned.
- * Note that the destructors of transport plugins will
- * be given the value returned by the constructor
- * and is expected to return a NULL pointer.
* @author Christian Grothoff
+ *
+ * @file
+ * Transport service plugin API
+ *
+ * @defgroup transport-plugin Transport Service plugin API
+ *
+ * Specifies the struct that is given to the plugin's entry method and the other
+ * struct that must be returned. Note that the destructors of transport plugins
+ * will be given the value returned by the constructor and is expected to return
+ * a NULL pointer.
+ *
+ * @{
*/
#ifndef PLUGIN_TRANSPORT_H
#define PLUGIN_TRANSPORT_H
/*#ifndef PLUGIN_TRANSPORT_H*/
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_transport_plugin.h */
*/
/**
- * @file include/gnunet_transport_service.h
- * @brief low-level P2P IO
* @author Christian Grothoff
+ *
+ * @file
+ * Low-level P2P IO
+ *
+ * @defgroup transport Transport service
+ * Low-level P2P IO
+ * @{
*/
#ifndef GNUNET_TRANSPORT_SERVICE_H
/* ifndef GNUNET_TRANSPORT_SERVICE_H */
#endif
+
+/** @} */ /* end of group */
+
/* end of gnunet_transport_service.h */
*/
/**
- * @file include/gnunet_tun_lib.h
- * @brief standard TCP/IP network structs and IP checksum calculations for TUN interaction
* @author Philipp Toelke
* @author Christian Grothoff
+ *
+ * @file
+ * Standard TCP/IP network structs and IP checksum calculations for TUN interaction
+ *
+ * @defgroup tun TUN library
+ * Standard TCP/IP network structs and IP checksum calculations for TUN interaction
+ * @{
*/
#ifndef GNUNET_TUN_LIB_H
#define GNUNET_TUN_LIB_H
struct GNUNET_HashCode *hc);
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/gnunet_util_lib.h
- * @brief convenience header including all headers of subsystems in
- * gnunet_util library
* @author Christian Grothoff
+ *
+ * @file
+ * Convenience header including all headers of subsystems in the gnunet_util library
*/
#ifndef GNUNET_UTIL_LIB_H
*/
/**
- * @file include/gnunet_util_taler_wallet_lib.h
- * @brief convenience header including all headers of subsystems in
- * gnunet_util_taler_wallet library. Note that (due to the
- * structure of the original headers), not all symbols declared
- * by the included headers are actually included in the
- * gnunet_util_taler_wallet library! The library excludes anything
- * relating to the GNUnet installation location, scheduler, networking
- * or OS-specific logic that would not apply to Apps/Browser extensions.
* @author Christian Grothoff
+ *
+ * @file
+ * Convenience header including all headers of subsystems in
+ * gnunet_util_taler_wallet library. Note that (due to the structure of the
+ * original headers), not all symbols declared by the included headers are
+ * actually included in the gnunet_util_taler_wallet library! The library
+ * excludes anything relating to the GNUnet installation location, scheduler,
+ * networking or OS-specific logic that would not apply to Apps/Browser
+ * extensions.
*/
#ifndef GNUNET_UTIL_TALER_WALLET_LIB_H
*/
/**
- * @file include/gnunet_vpn_service.h
- * @brief API to access the VPN service.
* @author Christian Grothoff
+ *
+ * @file
+ * API to access the VPN service.
+ *
+ * @defgroup vpn VPN service
+ *
+ * @{
*/
#ifndef GNUNET_VPN_SERVICE_H
#define GNUNET_VPN_SERVICE_H
GNUNET_VPN_AllocationCallback cb,
void *cb_cls);
-
+
/**
* Tell the VPN that forwarding to the Internet via some exit node is
* requested. Note that both UDP and TCP traffic will be forwarded,
GNUNET_VPN_disconnect (struct GNUNET_VPN_Handle *vh);
#endif
+
+/** @} */ /* end of group */
*/
/**
- * @file include/platform.h
- * @brief plaform specific includes and defines
* @author Nils Durner
* @author Christian Grothoff
+ *
+ * @file
+ * Plaform specific includes and defines.
+ *
* This file should never be included by installed
* header files (those starting with "gnunet_").
*/
*/
/**
- * @file include/plibc.h
- * @brief PlibC header
+ * @file
+ * PlibC header
+ *
* @attention This file is usually not installed under Unix,
* so ship it with your application
+ *
* @version $Revision: 158 $
*/
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/**
- * @file include/tap-windows.h
- * @brief TAP32 virtual network driver defines
+ * @file
+ * TAP32 virtual network driver defines
+ *
* @attention This file is part of openvpn and for kept
* as a separate file to allow easier upgrading.
*/
*/
/**
- * @file include/winproc.h
- * @brief Definitions for MS Windows
* @author Nils Durner
+ *
+ * @file
+ * Definitions for MS Windows
*/
#ifndef _WINPROC_H