[Openais] [PATCH] Convert existing documentation to doxygen format.

Steven Dake sdake at redhat.com
Fri Mar 11 20:06:24 PST 2011


Good for merge - thanks!

Reviewed-by: Steven Dake <sdake at redhat.com>

On 03/11/2011 07:50 PM, Russell Bryant wrote:
> This patch modifies most of the existing comments in header files to be
> in a format that doxygen can interpret.  This provides another
> significant improvement to the web/pdf/etc generated documentation
> without having to add new content.
> 
> Signed-off-by: Russell Bryant <russell at russellbryant.net>
> ---
>  exec/main.h                      |   10 ++-
>  exec/mainconfig.h                |    4 +-
>  exec/service.h                   |   13 ++-
>  exec/tlist.h                     |    4 +-
>  exec/totemiba.h                  |    2 +-
>  exec/totemmrp.h                  |   20 +++--
>  exec/totemnet.h                  |   14 ++-
>  exec/totemrrp.h                  |   15 ++-
>  exec/totemsrp.h                  |   19 ++--
>  exec/totemudp.h                  |    2 +-
>  exec/totemudpu.h                 |    2 +-
>  exec/util.h                      |    4 +-
>  exec/vsf.h                       |    7 +-
>  include/corosync/cfg.h           |   24 ++++--
>  include/corosync/confdb.h        |   39 ++++----
>  include/corosync/cpg.h           |   53 ++++++----
>  include/corosync/evs.h           |   40 +++++---
>  include/corosync/ipc_cpg.h       |    4 +-
>  include/corosync/lcr/lcr_ckpt.h  |   13 ++-
>  include/corosync/lcr/lcr_comp.h  |   26 +++---
>  include/corosync/list.h          |    7 +-
>  include/corosync/pload.h         |   11 +-
>  include/corosync/quorum.h        |   19 ++--
>  include/corosync/sam.h           |  198 +++++++++++++++++++++-----------------
>  include/corosync/sq.h            |    7 +-
>  include/corosync/totem/totem.h   |    3 +-
>  include/corosync/totem/totempg.h |   16 ++--
>  include/corosync/votequorum.h    |   39 ++++----
>  28 files changed, 354 insertions(+), 261 deletions(-)
> 
> diff --git a/exec/main.h b/exec/main.h
> index ac2e31e..ac260a8 100644
> --- a/exec/main.h
> +++ b/exec/main.h
> @@ -32,6 +32,13 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> +
> +/**
> + * @file
> + *
> + * @warning DO NOT USE SYMBOLS IN THIS FILE
> + */
> +
>  #ifndef MAIN_H_DEFINED
>  #define MAIN_H_DEFINED
>  
> @@ -45,9 +52,6 @@
>  #include <corosync/engine/config.h>
>  #include <corosync/engine/coroapi.h>
>  
> -/*
> - * DO NOT USE SYMBOLS IN THIS FILE
> - */
>  extern unsigned long long *(*main_clm_get_by_nodeid) (unsigned int node_id);
>  
>  extern void main_get_config_modules(struct config_iface_ver0 ***modules, int *num);
> diff --git a/exec/mainconfig.h b/exec/mainconfig.h
> index a1c87a3..b8d4ff9 100644
> --- a/exec/mainconfig.h
> +++ b/exec/mainconfig.h
> @@ -40,7 +40,7 @@
>  #include <corosync/list.h>
>  #include <corosync/engine/coroapi.h>
>  
> -/*
> +/**
>   * All service handlers in the AIS
>   */
>  struct dynamic_service {
> @@ -51,7 +51,7 @@ struct dynamic_service {
>  };
>  #define MAX_DYNAMIC_SERVICES 128
>  
> -/*
> +/**
>   * Structure describing cached uidgid item
>   */
>  struct uidgid_item {
> diff --git a/exec/service.h b/exec/service.h
> index 2cc3399..b7b934a 100644
> --- a/exec/service.h
> +++ b/exec/service.h
> @@ -36,17 +36,18 @@
>  #define COROSYNC_SERVICE_H_DEFINED
>  
>  #include <corosync/hdb.h>
> -/*
> - * Link and initialize a service
> - */
> +
>  struct corosync_api_v1;
>  
> +/**
> + * Link and initialize a service
> + */
>  extern unsigned int corosync_service_link_and_init (
>  	struct corosync_api_v1 *objdb,
>  	const char *service_name,
>  	unsigned int service_ver);
>  
> -/*
> +/**
>   * Unlink and exit a service
>   */
>  extern unsigned int corosync_service_unlink_and_exit (
> @@ -54,14 +55,14 @@ extern unsigned int corosync_service_unlink_and_exit (
>  	const char *service_name,
>  	unsigned int service_ver);
>  
> -/*
> +/**
>   * Unlink and exit all corosync services
>   */
>  extern void corosync_service_unlink_all (
>  	struct corosync_api_v1 *api,
>  	void (*unlink_all_complete) (void));
>  
> -/*
> +/**
>   * Load all of the default services
>   */
>  extern unsigned int corosync_service_defaults_link_and_init (
> diff --git a/exec/tlist.h b/exec/tlist.h
> index 7b568ee..42549ad 100644
> --- a/exec/tlist.h
> +++ b/exec/tlist.h
> @@ -243,7 +243,7 @@ static inline void timerlist_post_dispatch (struct timerlist *timerlist, timer_h
>  	free (timer);
>  }
>  
> -/*
> +/**
>   * returns the number of msec until the next timer will expire for use with poll
>   */
>  static inline unsigned long long timerlist_msec_duration_to_expire (struct timerlist *timerlist)
> @@ -280,7 +280,7 @@ static inline unsigned long long timerlist_msec_duration_to_expire (struct timer
>  	return (msec_duration_to_expire);
>  }
>  
> -/*
> +/**
>   * Expires any timers that should be expired
>   */
>  static inline void timerlist_expire (struct timerlist *timerlist)
> diff --git a/exec/totemiba.h b/exec/totemiba.h
> index 4b2fbbf..d826541 100644
> --- a/exec/totemiba.h
> +++ b/exec/totemiba.h
> @@ -40,7 +40,7 @@
>  
>  #include <corosync/totem/totem.h>
>  
> -/*
> +/**
>   * Create an instance
>   */
>  extern int totemiba_initialize (
> diff --git a/exec/totemmrp.h b/exec/totemmrp.h
> index d351072..b3528ca 100644
> --- a/exec/totemmrp.h
> +++ b/exec/totemmrp.h
> @@ -32,16 +32,20 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> +
> +/**
> + * @file
> + * Totem Single Ring Protocol
> + *
> + * depends on poll abstraction, POSIX, IPV4
> + */
> +
>  #ifndef TOTEMMRP_H_DEFINED
>  #define TOTEMMRP_H_DEFINED
>  
>  #include <corosync/totem/totem.h>
>  
> -/*
> - * Totem Single Ring Protocol
> - * depends on poll abstraction, POSIX, IPV4
> - */
> -/*
> +/**
>   * Initialize the logger
>   */
>  extern void totemmrp_log_printf_init (
> @@ -52,7 +56,7 @@ extern void totemmrp_log_printf_init (
>  	int log_level_notice,
>  	int log_level_debug);
>  
> -/*
> +/**
>   * Initialize the group messaging interface
>   */
>  extern int totemmrp_initialize (
> @@ -74,7 +78,7 @@ extern int totemmrp_initialize (
>  
>  extern void totemmrp_finalize (void);
>  
> -/*
> +/**
>   * Multicast a message
>   */
>  extern int totemmrp_mcast (
> @@ -82,7 +86,7 @@ extern int totemmrp_mcast (
>  	unsigned int iov_len,
>  	int priority);
>  
> -/*
> +/**
>   * Return number of available messages that can be queued
>   */
>  extern int totemmrp_avail (void);
> diff --git a/exec/totemnet.h b/exec/totemnet.h
> index 7e6374c..cf3baac 100644
> --- a/exec/totemnet.h
> +++ b/exec/totemnet.h
> @@ -32,6 +32,14 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> +
> +/**
> + * @file
> + * Totem Network interface - also does encryption/decryption
> + *
> + * depends on poll abstraction, POSIX, IPV4
> + */
> +
>  #ifndef TOTEMNET_H_DEFINED
>  #define TOTEMNET_H_DEFINED
>  
> @@ -42,12 +50,8 @@
>  
>  #define TOTEMNET_NOFLUSH	0
>  #define TOTEMNET_FLUSH		1
> -/*
> - * Totem Network interface - also does encryption/decryption
> - * depends on poll abstraction, POSIX, IPV4
> - */
>  
> -/*
> +/**
>   * Create an instance
>   */
>  extern int totemnet_initialize (
> diff --git a/exec/totemrrp.h b/exec/totemrrp.h
> index da79ed2..b092735 100644
> --- a/exec/totemrrp.h
> +++ b/exec/totemrrp.h
> @@ -32,6 +32,14 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> +
> +/**
> + * @file
> + * Totem Network interface - also does encryption/decryption
> + *
> + * depends on poll abstraction, POSIX, IPV4
> + */
> +
>  #ifndef TOTEMRRP_H_DEFINED
>  #define TOTEMRRP_H_DEFINED
>  
> @@ -43,12 +51,7 @@
>  #define TOTEMRRP_NOFLUSH	0
>  #define TOTEMRRP_FLUSH		1
>  
> -/*
> - * Totem Network interface - also does encryption/decryption
> - * depends on poll abstraction, POSIX, IPV4
> - */
> -
> -/*
> +/**
>   * Create an instance
>   */
>  extern int totemrrp_initialize (
> diff --git a/exec/totemsrp.h b/exec/totemsrp.h
> index 55f7ce2..8544161 100644
> --- a/exec/totemsrp.h
> +++ b/exec/totemsrp.h
> @@ -32,18 +32,21 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> +
> +/**
> + * @file
> + * Totem Single Ring Protocol
> + *
> + * depends on poll abstraction, POSIX, IPV4
> + */
> +
>  #ifndef TOTEMSRP_H_DEFINED
>  #define TOTEMSRP_H_DEFINED
>  
>  #include <corosync/totem/totem.h>
>  #include <corosync/totem/coropoll.h>
>  
> -/*
> - * Totem Single Ring Protocol
> - * depends on poll abstraction, POSIX, IPV4
> - */
> -
> -/*
> +/**
>   * Create a protocol instance
>   */
>  int totemsrp_initialize (
> @@ -66,7 +69,7 @@ int totemsrp_initialize (
>  
>  void totemsrp_finalize (void *srp_context);
>  
> -/*
> +/**
>   * Multicast a message
>   */
>  int totemsrp_mcast (
> @@ -75,7 +78,7 @@ int totemsrp_mcast (
>  	unsigned int iov_len,
>  	int priority);
>  
> -/*
> +/**
>   * Return number of available messages that can be queued
>   */
>  int totemsrp_avail (void *srp_context);
> diff --git a/exec/totemudp.h b/exec/totemudp.h
> index 6218794..faae363 100644
> --- a/exec/totemudp.h
> +++ b/exec/totemudp.h
> @@ -41,7 +41,7 @@
>  
>  #include <corosync/totem/totem.h>
>  
> -/*
> +/**
>   * Create an instance
>   */
>  extern int totemudp_initialize (
> diff --git a/exec/totemudpu.h b/exec/totemudpu.h
> index 2dcad24..9a400fe 100644
> --- a/exec/totemudpu.h
> +++ b/exec/totemudpu.h
> @@ -41,7 +41,7 @@
>  
>  #include <corosync/totem/totem.h>
>  
> -/*
> +/**
>   * Create an instance
>   */
>  extern int totemudpu_initialize (
> diff --git a/exec/util.h b/exec/util.h
> index f04794e..0df192c 100644
> --- a/exec/util.h
> +++ b/exec/util.h
> @@ -38,7 +38,7 @@
>  #include <sys/time.h>
>  #include <corosync/corotypes.h>
>  
> -/*
> +/**
>   * Get the time of day and convert to nanoseconds
>   */
>  extern cs_time_t clust_time_now(void);
> @@ -86,7 +86,7 @@ static inline cs_error_t hdb_error_to_cs (int res)		\
>  	}							\
>  }
>  
> -/*
> +/**
>   * Compare two names.  returns non-zero on match.
>   */
>  extern int name_match(cs_name_t *name1, cs_name_t *name2);
> diff --git a/exec/vsf.h b/exec/vsf.h
> index 1bd6f4c..28d3ef8 100644
> --- a/exec/vsf.h
> +++ b/exec/vsf.h
> @@ -37,7 +37,7 @@
>  struct corosync_api_v1;
>  struct corosync_vsf_iface_ver0 {
>  
> -	/*
> +	/**
>  	 * Executes a callback whenever component changes
>  	 */
>  	int (*init) (
> @@ -48,8 +48,9 @@ struct corosync_vsf_iface_ver0 {
>  		int primary_designated,
>  		struct memb_ring_id *ring_id));
>  
> -	/*
> -	 * Returns 1 if we are primary component, 0 if not
> +	/**
> +	 * @retval 1 if we are primary component
> +	 * @retval 0 if not primary component
>  	 */
>  	int (*primary) (void);
>  };
> diff --git a/include/corosync/cfg.h b/include/corosync/cfg.h
> index 5e3c8b9..903d1ef 100644
> --- a/include/corosync/cfg.h
> +++ b/include/corosync/cfg.h
> @@ -82,14 +82,23 @@ typedef enum {
>  	COROSYNC_CFG_STATETYPE_PRESENCE = 4
>  } corosync_cfg_state_type_t;
>  
> -/* Shutdown types.
> -   REQUEST is the normal shutdown. other daemons will be consulted
> -   REGARDLESS will tell other daemons but ignore their opinions
> -   IMMEDIATE will shut down straight away (but still tell other nodes)
> -*/
> +/**
> + * Shutdown types.
> + */
>  typedef enum {
> +	/**
> +	 * REQUEST is the normal shutdown.
> +	 *        Other daemons will be consulted.
> +	 */
>  	COROSYNC_CFG_SHUTDOWN_FLAG_REQUEST = 0,
> +	/**
> +	 * REGARDLESS will tell other daemons but ignore their opinions.
> +	 */
>  	COROSYNC_CFG_SHUTDOWN_FLAG_REGARDLESS = 1,
> +	/**
> +	 * IMMEDIATE will shut down straight away
> +	 *        (but still tell other nodes).
> +	 */
>  	COROSYNC_CFG_SHUTDOWN_FLAG_IMMEDIATE = 2,
>  } corosync_cfg_shutdown_flags_t;
>  
> @@ -122,8 +131,9 @@ typedef struct {
>  	corosync_cfg_shutdown_callback_t corosync_cfg_shutdown_callback;
>  } corosync_cfg_callbacks_t;
>  
> -/*
> +/**
>   * A node address. This is a complete sockaddr_in[6]
> + *
>   * To explain:
>   *  If you cast cna_address to a 'struct sockaddr', the sa_family field
>   *  will be AF_INET or AF_INET6. Armed with that knowledge you can then
> @@ -133,7 +143,7 @@ typedef struct {
>   */
>  typedef struct
>  {
> -	int address_length; /* FIXME: set but never used */
> +	int address_length; /**< @todo FIXME: set but never used */
>  	char address[sizeof(struct sockaddr_in6)];
>  } corosync_cfg_node_address_t;
>  
> diff --git a/include/corosync/confdb.h b/include/corosync/confdb.h
> index ca0d7ba..06aac1e 100644
> --- a/include/corosync/confdb.h
> +++ b/include/corosync/confdb.h
> @@ -118,21 +118,21 @@ typedef struct {
>  
>  /** @} */
>  
> -/*
> +/**
>   * Create a new confdb connection
>   */
>  cs_error_t confdb_initialize (
>  	confdb_handle_t *handle,
>  	confdb_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Close the confdb handle
>   */
>  cs_error_t confdb_finalize (
>  	confdb_handle_t handle);
>  
>  
> -/*
> +/**
>   * Write back the configuration
>   */
>  cs_error_t confdb_write (
> @@ -140,7 +140,7 @@ cs_error_t confdb_write (
>  	char *error_text,
>  	size_t errbuf_len);
>  
> -/*
> +/**
>   * Reload the configuration
>   */
>  cs_error_t confdb_reload (
> @@ -149,22 +149,23 @@ cs_error_t confdb_reload (
>  	char *error_text,
>  	size_t errbuf_len);
>  
> -/*
> - * Get a file descriptor on which to poll.  confdb_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * confdb_handle_t is NOT a file descriptor and may not be used directly.
>   */
>  cs_error_t confdb_fd_get (
>  	confdb_handle_t handle,
>  	int *fd);
>  
> -/*
> +/**
>   * Dispatch configuration changes
>   */
>  cs_error_t confdb_dispatch (
>  	confdb_handle_t handle,
>  	cs_dispatch_flags_t dispatch_types);
>  
> -/*
> +/**
>   * Change notification
>   */
>  cs_error_t confdb_track_changes (
> @@ -175,7 +176,7 @@ cs_error_t confdb_track_changes (
>  cs_error_t confdb_stop_track_changes (
>  	confdb_handle_t handle);
>  
> -/*
> +/**
>   * Manipulate objects
>   */
>  cs_error_t confdb_object_create (
> @@ -200,7 +201,7 @@ cs_error_t confdb_object_name_get (
>  	char *object_name,
>  	size_t *object_name_len);
>  
> -/*
> +/**
>   * Manipulate keys
>   */
>  cs_error_t confdb_key_create (
> @@ -227,7 +228,7 @@ cs_error_t confdb_key_delete (
>  	const void *value,
>  	size_t value_len);
>  
> -/*
> +/**
>   * Key queries
>   */
>  cs_error_t confdb_key_get (
> @@ -270,10 +271,12 @@ cs_error_t confdb_key_decrement (
>  	size_t key_name_len,
>  	unsigned int *value);
>  
> -/*
> +/**
>   * Object queries
> + *
>   * "find" loops through all objects of a given name and is also
>   * a quick way of finding a specific object,
> + *
>   * "iter" returns each object in sequence.
>   */
>  cs_error_t confdb_object_find_start (
> @@ -306,7 +309,7 @@ cs_error_t confdb_object_iter_destroy(
>  	confdb_handle_t handle,
>  	hdb_handle_t parent_object_handle);
>  
> -/*
> +/**
>   * Key iterator
>   */
>  cs_error_t confdb_key_iter_start (
> @@ -329,14 +332,16 @@ cs_error_t confdb_key_iter_typed (
>  	size_t *value_len,
>  	confdb_value_types_t *type);
>  
> -/*
> - * Get/set context variable
> +/**
> + * Get context variable
>   */
> -
>  cs_error_t confdb_context_get (
>  	confdb_handle_t handle,
>  	const void **context);
>  
> +/**
> + * Set context variable
> + */
>  cs_error_t confdb_context_set (
>  	confdb_handle_t handle,
>  	const void *context);
> diff --git a/include/corosync/cpg.h b/include/corosync/cpg.h
> index 6189eb5..f7956fa 100644
> --- a/include/corosync/cpg.h
> +++ b/include/corosync/cpg.h
> @@ -52,15 +52,15 @@ typedef uint64_t cpg_handle_t;
>  typedef uint64_t cpg_iteration_handle_t;
>  
>  typedef enum {
> -	CPG_TYPE_UNORDERED, /* not implemented */
> -	CPG_TYPE_FIFO,		/* same as agreed */
> +	CPG_TYPE_UNORDERED, /**< not implemented */
> +	CPG_TYPE_FIFO,      /**< same as agreed */
>  	CPG_TYPE_AGREED,
> -	CPG_TYPE_SAFE		/* not implemented */
> +	CPG_TYPE_SAFE       /**< not implemented */
>  } cpg_guarantee_t;
>  
>  typedef enum {
> -	CPG_FLOW_CONTROL_DISABLED,	/* flow control is disabled - new messages may be sent */
> -	CPG_FLOW_CONTROL_ENABLED	/* flow control is enabled - new messages should not be sent */
> +	CPG_FLOW_CONTROL_DISABLED, /**< flow control is disabled - new messages may be sent */
> +	CPG_FLOW_CONTROL_ENABLED   /**< flow control is enabled - new messages should not be sent */
>  } cpg_flow_control_state_t;
>  
>  
> @@ -112,7 +112,7 @@ typedef void (*cpg_deliver_fn_t) (
>  	const struct cpg_name *group_name,
>  	uint32_t nodeid,
>  	uint32_t pid,
> -	/*
> +	/**
>  	 * Unlike many "msg" pointers, this one is deliberately *not*
>  	 * declared const in order to permit in-place endian conversion.
>  	 */
> @@ -154,14 +154,14 @@ typedef struct {
>  
>  /** @} */
>  
> -/*
> +/**
>   * Create a new cpg connection
>   */
>  cs_error_t cpg_initialize (
>  	cpg_handle_t *handle,
>  	cpg_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Create a new cpg connection, initialize with model
>   */
>  cs_error_t cpg_model_initialize (
> @@ -170,41 +170,46 @@ cs_error_t cpg_model_initialize (
>  	cpg_model_data_t *model_data,
>  	void *context);
>  
> -/*
> +/**
>   * Close the cpg handle
>   */
>  cs_error_t cpg_finalize (
>  	cpg_handle_t handle);
>  
> -/*
> - * Get a file descriptor on which to poll.  cpg_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * cpg_handle_t is NOT a file descriptor and may not be used directly.
>   */
>  cs_error_t cpg_fd_get (
>  	cpg_handle_t handle,
>  	int *fd);
>  
> -/*
> - * Get and set contexts for a CPG handle
> +/**
> + * Get contexts for a CPG handle
>   */
>  cs_error_t cpg_context_get (
>  	cpg_handle_t handle,
>  	void **context);
>  
> +/**
> + * Set contexts for a CPG handle
> + */
>  cs_error_t cpg_context_set (
>  	cpg_handle_t handle,
>  	void *context);
>  
>  
> -/*
> +/**
>   * Dispatch messages and configuration changes
>   */
>  cs_error_t cpg_dispatch (
>  	cpg_handle_t handle,
>  	cs_dispatch_flags_t dispatch_types);
>  
> -/*
> +/**
>   * Join one or more groups.
> + *
>   * messages multicasted with cpg_mcast_joined will be sent to every
>   * group that has been joined on handle handle.  Any message multicasted
>   * to a group that has been previously joined will be delivered in cpg_dispatch
> @@ -213,17 +218,21 @@ cs_error_t cpg_join (
>  	cpg_handle_t handle,
>  	const struct cpg_name *group);
>  
> -/*
> +/**
>   * Leave one or more groups
>   */
>  cs_error_t cpg_leave (
>  	cpg_handle_t handle,
>  	const struct cpg_name *group);
>  
> -/*
> +/**
>   * Multicast to groups joined with cpg_join.
> - * The iovec described by iovec will be multicasted to all groups joined with
> - * the cpg_join interface for handle.
> + *
> + * @param handle
> + * @param guarantee
> + * @param iovec This iovec will be multicasted to all groups joined with
> + *              the cpg_join interface for handle.
> + * @param iov_len
>   */
>  cs_error_t cpg_mcast_joined (
>  	cpg_handle_t handle,
> @@ -231,7 +240,7 @@ cs_error_t cpg_mcast_joined (
>  	const struct iovec *iovec,
>  	unsigned int iov_len);
>  
> -/*
> +/**
>   * Get membership information from cpg
>   */
>  cs_error_t cpg_membership_get (
> @@ -263,7 +272,7 @@ cs_error_t cpg_zcb_mcast_joined (
>  	void *msg,
>  	size_t msg_len);
>  
> -/*
> +/**
>   * Iteration
>   */
>  cs_error_t cpg_iteration_initialize(
> diff --git a/include/corosync/evs.h b/include/corosync/evs.h
> index 1718e40..3769149 100644
> --- a/include/corosync/evs.h
> +++ b/include/corosync/evs.h
> @@ -92,47 +92,52 @@ typedef struct {
>  
>  /** @} */
>  
> -/*
> +/**
>   * Create a new evs connection
>   */
>  cs_error_t evs_initialize (
>  	evs_handle_t *handle,
>  	evs_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Close the evs handle
>   */
>  cs_error_t evs_finalize (
>  	evs_handle_t handle);
>  
> -/*
> - * Get a file descriptor on which to poll.  evs_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * evs_handle_t is NOT a file descriptor and may not be used directly.
>   */
>  cs_error_t evs_fd_get (
>  	evs_handle_t handle,
>  	int *fd);
>  
> -/*
> - * Get and set contexts for a EVS handle
> +/**
> + * Get contexts for a EVS handle
>   */
>  cs_error_t evs_context_get (
>  	evs_handle_t handle,
>  	void **context);
>  
> +/**
> + * Set contexts for a EVS handle
> + */
>  cs_error_t evs_context_set (
>  	evs_handle_t handle,
>  	void *context);
>  
> -/*
> +/**
>   * Dispatch messages and configuration changes
>   */
>  cs_error_t evs_dispatch (
>  	evs_handle_t handle,
>  	cs_dispatch_flags_t dispatch_types);
>  
> -/*
> +/**
>   * Join one or more groups.
> + *
>   * messages multicasted with evs_mcast_joined will be sent to every
>   * group that has been joined on handle handle.  Any message multicasted
>   * to a group that has been previously joined will be delivered in evs_dispatch
> @@ -142,7 +147,7 @@ cs_error_t evs_join (
>  	const struct evs_group *groups,
>  	size_t group_cnt);
>  
> -/*
> +/**
>   * Leave one or more groups
>   */
>  cs_error_t evs_leave (
> @@ -150,10 +155,14 @@ cs_error_t evs_leave (
>  	const struct evs_group *groups,
>  	size_t group_cnt);
>  
> -/*
> +/**
>   * Multicast to groups joined with evs_join.
> - * The iovec described by iovec will be multicasted to all groups joined with
> - * the evs_join interface for handle.
> + *
> + * @param handle
> + * @param guarantee
> + * @param iovec This iovec will be multicasted to all groups joined with
> + *              the evs_join interface for handle.
> + * @param iov_len
>   */
>  cs_error_t evs_mcast_joined (
>  	evs_handle_t handle,
> @@ -161,8 +170,9 @@ cs_error_t evs_mcast_joined (
>  	const struct iovec *iovec,
>  	unsigned int iov_len);
>  
> -/*
> +/**
>   * Multicast to specified groups.
> + *
>   * Messages will be multicast to groups specified in the api call and not those
>   * that have been joined (unless they are in the groups parameter).
>   */
> @@ -174,7 +184,7 @@ cs_error_t evs_mcast_groups (
>  	const struct iovec *iovec,
>  	unsigned int iov_len);
>  
> -/*
> +/**
>   * Get membership information from evs
>   */
>  cs_error_t evs_membership_get (
> diff --git a/include/corosync/ipc_cpg.h b/include/corosync/ipc_cpg.h
> index afdebaa..664f814 100644
> --- a/include/corosync/ipc_cpg.h
> +++ b/include/corosync/ipc_cpg.h
> @@ -222,7 +222,9 @@ struct res_lib_cpg_mcast {
>  	coroipc_response_header_t header __attribute__((aligned(8)));
>  };
>  
> -/* Message from another node */
> +/**
> + * Message from another node
> + */
>  struct res_lib_cpg_deliver_callback {
>  	coroipc_response_header_t header __attribute__((aligned(8)));
>  	mar_cpg_name_t group_name __attribute__((aligned(8)));
> diff --git a/include/corosync/lcr/lcr_ckpt.h b/include/corosync/lcr/lcr_ckpt.h
> index 8020bd2..7d3ba4d 100644
> --- a/include/corosync/lcr/lcr_ckpt.h
> +++ b/include/corosync/lcr/lcr_ckpt.h
> @@ -31,25 +31,26 @@
>  #ifndef LCR_CKPT_H_DEFINED
>  #define LCR_CKPT_H_DEFINED
>  
> -/*
> +/**
>   * Write data of length data_len into the section name for ckpt_handle
>   */
>  int lcr_ckpt_section_write (void *ckpt_handle, const char *name,
>  			    const void *data, size_t data_len);
>  
> -/*
> - * Read the section name into data with data len.  Returned in data_len is the
> - * actual data read from ckpt_handle.
> +/**
> + * Read the section name into data with data len.
> + *
> + * @retval Returned in data_len is the actual data read from ckpt_handle.
>   */
>  int lcr_ckpt_section_read (void *ckpt_handle, const char *name,
>  			   void *data, size_t *data_len);
>  
> -/*
> +/**
>   * Initialize the section iterator to the first section
>   */
>  int lcr_ckpt_section_iterator_first (void *ckpt_handle);
>  
> -/*
> +/**
>   * Get the current section, return it in name, and advance to next section
>   */
>  int lcr_ckpt_section_iterator_next (void *ckpt_handle, char **name);
> diff --git a/include/corosync/lcr/lcr_comp.h b/include/corosync/lcr/lcr_comp.h
> index 084cda6..f163cbf 100644
> --- a/include/corosync/lcr/lcr_comp.h
> +++ b/include/corosync/lcr/lcr_comp.h
> @@ -31,27 +31,27 @@
>  #ifndef LCR_COMP_H_DEFINED
>  #define LCR_COMP_H_DEFINED
>  
> -/*
> +/**
>   * LCR Interface
>   */
>  struct lcr_iface {
> -	const char *name;			/* Name of the interface */
> -	int version;			/* Version of this interface */
> -	int *versions_replace;		/* Versions that this interface can replace */
> -	int versions_replace_count;	/* Count of entries in version_replace */
> -	char **dependencies;		/* Dependent interfaces */
> -	size_t dependency_count;	/* Count of entires in dependencies */
> -	int (*constructor) (void *context);	/* Constructor for this interface */
> -	void (*destructor) (void *context);	/* Constructor for this interface */
> -	void **interfaces;		/* List of functions in interface */
> +	const char *name;                   /**< Name of the interface */
> +	int version;                        /**< Version of this interface */
> +	int *versions_replace;              /**< Versions that this interface can replace */
> +	int versions_replace_count;         /**< Count of entries in version_replace */
> +	char **dependencies;                /**< Dependent interfaces */
> +	size_t dependency_count;            /**< Count of entires in dependencies */
> +	int (*constructor) (void *context); /**< Constructor for this interface */
> +	void (*destructor) (void *context); /**< Constructor for this interface */
> +	void **interfaces;                  /**< List of functions in interface */
>  };
>  
> -/*
> +/**
>   * LCR Component
>   */
>  struct lcr_comp {
> -	struct lcr_iface *ifaces;	/* List of interfaces in this component */
> -	size_t iface_count;		/* size of ifaces list */
> +	struct lcr_iface *ifaces; /**< List of interfaces in this component */
> +	size_t iface_count;       /**< size of ifaces list */
>  };
>  
>  extern void lcr_component_register (struct lcr_comp *comp);
> diff --git a/include/corosync/list.h b/include/corosync/list.h
> index 1790a69..d7720e0 100644
> --- a/include/corosync/list.h
> +++ b/include/corosync/list.h
> @@ -31,10 +31,15 @@
>   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
> -/*
> +
> +/**
> + * @file
> + * Linked list API
> + *
>   * This implementation uses the same API as the linux kernel to
>   * help us kernel developers easily use the list primatives
>   */
> +
>  #ifndef LIST_H_DEFINED
>  #define LIST_H_DEFINED
>  
> diff --git a/include/corosync/pload.h b/include/corosync/pload.h
> index ff9bcec..ba0df37 100644
> --- a/include/corosync/pload.h
> +++ b/include/corosync/pload.h
> @@ -74,22 +74,23 @@ typedef struct {
>  
>  /** @} */
>  
> -/*
> +/**
>   * Create a new pload connection
>   */
>  pload_error_t pload_initialize (
>  	pload_handle_t *handle,
>  	pload_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Close the pload handle
>   */
>  pload_error_t pload_finalize (
>  	pload_handle_t handle);
>  
> -/*
> - * Get a file descriptor on which to poll.  pload_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * @note pload_handle_t is NOT a file descriptor and may not be used directly.
>   */
>  pload_error_t pload_fd_get (
>  	pload_handle_t handle,
> diff --git a/include/corosync/quorum.h b/include/corosync/quorum.h
> index ab5333b..ab45aea 100644
> --- a/include/corosync/quorum.h
> +++ b/include/corosync/quorum.h
> @@ -60,29 +60,30 @@ typedef struct {
>  } quorum_callbacks_t;
>  
>  
> -/*
> +/**
>   * Create a new quorum connection
>   */
>  cs_error_t quorum_initialize (
>  	quorum_handle_t *handle,
>  	quorum_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Close the quorum handle
>   */
>  cs_error_t quorum_finalize (
>  	quorum_handle_t handle);
>  
>  
> -/*
> - * Get a file descriptor on which to poll. quorum_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * @note quorum_handle_t is NOT a file descriptor and may not be used directly.
>   */
>  cs_error_t quorum_fd_get (
>  	quorum_handle_t handle,
>  	int *fd);
>  
> -/*
> +/**
>   * Dispatch messages and configuration changes
>   */
>  cs_error_t quorum_dispatch (
> @@ -90,14 +91,16 @@ cs_error_t quorum_dispatch (
>  	cs_dispatch_flags_t dispatch_types);
>  
>  
> -/*
> +/**
>   * Get quorum information.
>   */
>  cs_error_t quorum_getquorate (
>  	quorum_handle_t handle,
>  	int *quorate);
>  
> -/* Track node and quorum changes */
> +/**
> + * Track node and quorum changes
> + */
>  cs_error_t quorum_trackstart (
>  	quorum_handle_t handle,
>  	unsigned int flags );
> diff --git a/include/corosync/sam.h b/include/corosync/sam.h
> index 30401a0..84bf532 100644
> --- a/include/corosync/sam.h
> +++ b/include/corosync/sam.h
> @@ -49,173 +49,193 @@ typedef enum {
>  	SAM_RECOVERY_POLICY_CONFDB = 0x10,
>  } sam_recovery_policy_t;
>  
> -/*
> +/**
>   * Callback definition for event driven checking
>   */
>  typedef int (*sam_hc_callback_t)(void);
>  
> -/*
> - * Create a new SAM connection. This function must be called before any other.
> +/**
> + * Create a new SAM connection.
> + *
> + * This function must be called before any other.
>   * It is recommended to call it as one of first in application.
>   *
>   * @param time_interval Time interval in miliseconds of healthcheck. After this time, application
> - * will be killed and recovery policy will be taken. This can be zero, which means,
> - * that there is no time limit (only fall of application is checked and only then
> - * recovery action is taken)
> + *        will be killed and recovery policy will be taken. This can be zero, which means,
> + *        that there is no time limit (only fall of application is checked and only then
> + *        recovery action is taken)
>   * @param recovery_policy One of SAM_RECOVERY_POLICY_RESTART, which means, that after
> - * timeout application will be killed and new instance will be started.
> - * SAM_RECOVERY_POLICY_QUIT will just stop application
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE in case user is trying to initialize initialized instance
> - * - CS_ERR_INVALID_PARAM in case recovery_policy had bad value
> + *        timeout application will be killed and new instance will be started.
> + *        SAM_RECOVERY_POLICY_QUIT will just stop application
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE in case user is trying to initialize initialized instance
> + * @retval CS_ERR_INVALID_PARAM in case recovery_policy had bad value
>   */
>  cs_error_t sam_initialize (
>          int time_interval,
>          sam_recovery_policy_t recovery_policy);
>  
> -/*
> - * Close the SAM handle. This function should be called as late as possible
> +/**
> + * Close the SAM handle.
> + *
> + * This function should be called as late as possible.
>   * (in reality, if you plan just quit, and checking is stopped, there is no need
>   * to call it). Function will stop healtchecking and put library to state, where
>   * no new start is possible.
>   *
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE library was not initialized by #sam_initialize
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE library was not initialized by #sam_initialize
>   */
>  cs_error_t sam_finalize (void);
>  
> -/*
> - * Start healthchecking. From this time, you should call every time_interval
> +/**
> + * Start healthchecking.
> + *
> + * From this time, you should call every time_interval
>   * sam_hc_send, otherwise, recovery action will be taken.
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE component was not registered by #sam_register
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE component was not registered by #sam_register
>   */
>  cs_error_t sam_start (void);
>  
> -/*
> - * Stop healthchecking. Oposite of #sam_start. You can call sam_start and
> - * sam_stop how many times you want.
> +/**
> + * Stop healthchecking.
> + *
> + * Oposite of #sam_start. You can call sam_start and sam_stop how many
> + * times you want.
>   *
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE healthchecking is not in running state (no sam_start
> - *   was called)
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE healthchecking is not in running state (no sam_start
> + *         was called)
>   */
>  cs_error_t sam_stop (void);
>  
> -/*
> - * Set warning signal to be send. Default signal is SIGTERM. You can
> - * use SIGKILL to emulate NOT sending warning signal and just send
> - * SIGKILL.
> - *
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE library was not initialized by #sam_initialize or
> - *   is finalized
> +/**
> + * Set warning signal to be send.
> + *
> + * Default signal is SIGTERM. You can use SIGKILL to emulate NOT sending
> + * warning signal and just send SIGKILL.
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE library was not initialized by #sam_initialize or
> + *         is finalized
>   */
>  cs_error_t sam_warn_signal_set (int warn_signal);
>  
> -/*
> - * Register application. This is one of most crucial function. In case, your
> +/**
> + * Register application.
> + *
> + * This is one of most crucial function. In case, your
>   * application will be restarted, you will always return to point after calling
>   * this function. This function can be called only once, and SAM must be initialized
>   * by sam_initialize. You can choose any place in your application, where to call
>   * this function.
>   *
>   * @param instance_id NULL or pointer to int memory, where current instance
> - * of application will be returned. It's always safe to suppose, that first instance
> - * (this means, no recovery action was taken yet) will be always 1 and instance_id
> - * will be raising up to MAX_INT (after this, it will fall to 0).
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE in case, you call this function twice, or before sam_init
> - * - CS_ERR_LIBRARY internal library call failed. This can be one of pipe or fork
> - *   creation. You can get more information from errno
> + *        of application will be returned. It's always safe to suppose, that first instance
> + *        (this means, no recovery action was taken yet) will be always 1 and instance_id
> + *        will be raising up to MAX_INT (after this, it will fall to 0).
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE in case, you call this function twice, or before sam_init
> + * @retval CS_ERR_LIBRARY internal library call failed. This can be one of pipe or fork
> + *         creation. You can get more information from errno
>   */
>  cs_error_t sam_register (
>  	unsigned int *instance_id);
>  
> -/*
> - * Send healthcheck confirmation. This should be called after #sam_start
> +/**
> + * Send healthcheck confirmation.
>   *
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE healthchecking is not in running state (no sam_start was
> - *   called, or called after sam_stop/sam_finalize)
> + * This should be called after #sam_start
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE healthchecking is not in running state (no sam_start was
> + *         called, or called after sam_stop/sam_finalize)
>   */
>  cs_error_t sam_hc_send (void);
>  
> -/*
> - * Register healtcheck callback. After you will call this function, and set
> +/**
> + * Register healtcheck callback.
> + *
> + * After you will call this function, and set
>   * cb to something else then NULL, SAM is automatically switched from
>   * application driven healtchecking to event driven healtchecking. In other
>   * words, is not longer needed to call sam_hc_send, but your callback function
>   * must return 0 in case of healtchecking is correct, or value different then
>   * 0, in case something happend. After next hc iteration, warning signal and
>   * after that kill signal is sent back to your application.
> + *
>   * @param cb Pointer to healtcheck function, or NULL to switch back to application driven hc
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE in case, you call this function before sam_init or after sam_start
> - * - CS_ERR_LIBRARY internal library call failed. This can be one of pipe or pthread
> - *   creation.
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE in case, you call this function before sam_init or after sam_start
> + * @retval CS_ERR_LIBRARY internal library call failed. This can be one of pipe or pthread
> + *         creation.
>   */
>  cs_error_t sam_hc_callback_register (sam_hc_callback_t cb);
>  
> -/*
> +/**
>   * Return size of stored data.
> + *
>   * @param size Pointer to variable, where stored data size is returned. If
> - * nothing or NULL is stored, then 0 is returned.
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE in case you call this function before sam_init or after
> - *   sam_finalize
> - * - CS_ERR_INVALID_PARAM if size parameter is NULL
> + *        nothing or NULL is stored, then 0 is returned.
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE in case you call this function before sam_init or after
> + *         sam_finalize
> + * @retval CS_ERR_INVALID_PARAM if size parameter is NULL
>   */
>  cs_error_t sam_data_getsize (size_t *size);
>  
> -/*
> +/**
>   * Return stored data.
> + *
>   * @param data Pointer to place, where to store data
>   * @param size Allocated size of data
> - * @return
> - * - CS_OK if no problem appeared
> - * - CS_ERR_BAD_HANDLE if you call this function before sam_init or after sam_finalize
> - * - CS_ERR_INVALID_PARAM if data is NULL or size is less then currently saved user data length
> + *
> + * @retval CS_OK if no problem appeared
> + * @retval CS_ERR_BAD_HANDLE if you call this function before sam_init or after sam_finalize
> + * @retval CS_ERR_INVALID_PARAM if data is NULL or size is less then currently saved user data length
>   */
>  cs_error_t sam_data_restore (
>  	void *data,
>  	size_t size);
>  
> -/*
> - * Store user data. Such stored data survives restart of child.
> +/**
> + * Store user data.
> + *
> + * Such stored data survives restart of child.
> + *
>   * @param data Data to store. You can use NULL to delete data
>   * @param size Size of data to store.
> - * @return
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE if you call this function before sam_init or
> - *   after sam_finalize
> - * - CS_ERR_NO_MEMORY if data is too large and malloc/realloc was not
> - *   sucesfull
> - * - CS_ERR_LIBRARY if some internal error appeared (communication with parent
> - *   process)
> + *
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE if you call this function before sam_init or
> + *         after sam_finalize
> + * @retval CS_ERR_NO_MEMORY if data is too large and malloc/realloc was not
> + *         sucesfull
> + * @retval CS_ERR_LIBRARY if some internal error appeared (communication with parent
> + *         process)
>   */
>  cs_error_t sam_data_store (
>  	const void *data,
>  	size_t size);
>  
> -/*
> - * Marks child as failed. This can be called only with SAM_RECOVERY_POLICY_CONFDB flag set and
> +/**
> + * Marks child as failed.
> + *
> + * This can be called only with SAM_RECOVERY_POLICY_CONFDB flag set and
>   * makes sense only for SAM_RECOVERY_POLICY_RESTART. This will kill child without sending warn
>   * signal. Confdb state key will be set to failed.
>   *
> - * - CS_OK in case no problem appeared
> - * - CS_ERR_BAD_HANDLE library was not initialized or was already finalized
> - * - CS_ERR_INVALID_PARAM recovery policy doesn't has SAM_RECOVERY_POLICY_CONFDB flag set
> - * - CS_ERR_LIBRARY if some internal error appeared (communication with parent
> - *   process)
> + * @retval CS_OK in case no problem appeared
> + * @retval CS_ERR_BAD_HANDLE library was not initialized or was already finalized
> + * @retval CS_ERR_INVALID_PARAM recovery policy doesn't has SAM_RECOVERY_POLICY_CONFDB flag set
> + * @retval CS_ERR_LIBRARY if some internal error appeared (communication with parent
> + *         process)
>   */
>  cs_error_t sam_mark_failed (void);
>  
> diff --git a/include/corosync/sq.h b/include/corosync/sq.h
> index ce3b1f8..3fe78f7 100644
> --- a/include/corosync/sq.h
> +++ b/include/corosync/sq.h
> @@ -53,15 +53,16 @@ struct sq {
>   * Compare a unsigned rollover-safe value to an unsigned rollover-safe value
>   */
>  
> -/*
> +/**
>   * ADJUST_ROLLOVER_POINT is the value used to determine when a window should be
>   *	used to calculate a less-then or less-then-equal comparison.
> - *
> + */
> +#define ADJUST_ROLLOVER_POINT 0x80000000
> +/**
>   * ADJUST_ROLLOVER_VALUE is the value by which both values in a comparison are
>   *	adjusted if either value in a comparison is greater then
>   *	ADJUST_ROLLOVER_POINT.
>   */
> -#define ADJUST_ROLLOVER_POINT 0x80000000
>  #define ADJUST_ROLLOVER_VALUE 0x10000
>  
>  static inline int sq_lt_compare (unsigned int a, unsigned int b) {
> diff --git a/include/corosync/totem/totem.h b/include/corosync/totem/totem.h
> index 1c63186..eb1a908 100644
> --- a/include/corosync/totem/totem.h
> +++ b/include/corosync/totem/totem.h
> @@ -52,7 +52,7 @@
>  #define SEND_THREADS_MAX	16
>  #define INTERFACE_MAX		2
>  
> -/*
> +/**
>   * Maximum number of continuous gather states
>   */
>  #define MAX_NO_CONT_GATHER	3
> @@ -65,7 +65,6 @@ struct totem_interface {
>  	uint16_t ttl;
>  	int member_count;
>  	struct totem_ip_address member_list[PROCESSOR_COUNT_MAX];
> -	
>  };
>  
>  struct totem_logging_configuration {
> diff --git a/include/corosync/totem/totempg.h b/include/corosync/totem/totempg.h
> index 26447aa..066be21 100644
> --- a/include/corosync/totem/totempg.h
> +++ b/include/corosync/totem/totempg.h
> @@ -33,6 +33,13 @@
>   * THE POSSIBILITY OF SUCH DAMAGE.
>   */
>  
> +/**
> + * @file
> + * Totem Single Ring Protocol
> + *
> + * depends on poll abstraction, POSIX, IPV4
> + */
> +
>  #ifndef TOTEMPG_H_DEFINED
>  #define TOTEMPG_H_DEFINED
>  
> @@ -53,12 +60,7 @@ struct totempg_group {
>  #define TOTEMPG_AGREED			0
>  #define TOTEMPG_SAFE			1
>  
> -/*
> - * Totem Single Ring Protocol
> - * depends on poll abstraction, POSIX, IPV4
> - */
> -
> -/*
> +/**
>   * Initialize the totem process groups abstraction
>   */
>  extern int totempg_initialize (
> @@ -76,7 +78,7 @@ extern int totempg_callback_token_create (void **handle_out,
>  
>  extern void totempg_callback_token_destroy (void *handle);
>  
> -/*
> +/**
>   * Initialize a groups instance
>   */
>  extern int totempg_groups_initialize (
> diff --git a/include/corosync/votequorum.h b/include/corosync/votequorum.h
> index f915686..6cdad49 100644
> --- a/include/corosync/votequorum.h
> +++ b/include/corosync/votequorum.h
> @@ -102,36 +102,38 @@ typedef struct {
>  } votequorum_callbacks_t;
>  
>  
> -/*
> +/**
>   * Create a new quorum connection
>   */
>  cs_error_t votequorum_initialize (
>  	votequorum_handle_t *handle,
>  	votequorum_callbacks_t *callbacks);
>  
> -/*
> +/**
>   * Close the quorum handle
>   */
>  cs_error_t votequorum_finalize (
>  	votequorum_handle_t handle);
>  
>  
> -/*
> +/**
>   * Dispatch messages and configuration changes
>   */
>  cs_error_t votequorum_dispatch (
>  	votequorum_handle_t handle,
>  	cs_dispatch_flags_t dispatch_types);
>  
> -/*
> - * Get a file descriptor on which to poll. votequorum_handle_t is NOT a
> - * file descriptor and may not be used directly.
> +/**
> + * Get a file descriptor on which to poll.
> + *
> + * @note votequorum_handle_t is NOT a file descriptor and may not be
> + *       used directly.
>   */
>  cs_error_t votequorum_fd_get (
>  	votequorum_handle_t handle,
>  	int *fd);
>  
> -/*
> +/**
>   * Get quorum information.
>   */
>  cs_error_t votequorum_getinfo (
> @@ -139,14 +141,14 @@ cs_error_t votequorum_getinfo (
>  	unsigned int nodeid,
>  	struct votequorum_info *info);
>  
> -/*
> +/**
>   * set expected_votes
>   */
>  cs_error_t votequorum_setexpected (
>  	votequorum_handle_t handle,
>  	unsigned int expected_votes);
>  
> -/*
> +/**
>   * set votes for a node
>   */
>  cs_error_t votequorum_setvotes (
> @@ -154,8 +156,9 @@ cs_error_t votequorum_setvotes (
>  	unsigned int nodeid,
>  	unsigned int votes);
>  
> -/*
> +/**
>   * Register a quorum device
> + *
>   * it will be DEAD until polled
>   */
>  cs_error_t votequorum_qdisk_register (
> @@ -163,33 +166,35 @@ cs_error_t votequorum_qdisk_register (
>  	const char *name,
>  	unsigned int votes);
>  
> -/*
> +/**
>   * Unregister a quorum device
>   */
>  cs_error_t votequorum_qdisk_unregister (
>  	votequorum_handle_t handle);
>  
> -/*
> +/**
>   * Poll a quorum device
>   */
>  cs_error_t votequorum_qdisk_poll (
>  	votequorum_handle_t handle,
>  	unsigned int state);
>  
> -/*
> +/**
>   * Get quorum device information
>   */
>  cs_error_t votequorum_qdisk_getinfo (
>  	votequorum_handle_t handle,
>  	struct votequorum_qdisk_info *info);
>  
> -/*
> +/**
>   * Set the "hasstate" bit for this node
>   */
>  cs_error_t votequorum_setstate (
>  	votequorum_handle_t handle);
>  
> -/* Track node and quorum changes */
> +/**
> + * Track node and quorum changes
> + */
>  cs_error_t votequorum_trackstart (
>  	votequorum_handle_t handle,
>  	uint64_t context,
> @@ -198,13 +203,13 @@ cs_error_t votequorum_trackstart (
>  cs_error_t votequorum_trackstop (
>  	votequorum_handle_t handle);
>  
> -/*
> +/**
>   * Set our LEAVING flag. we should exit soon after this
>   */
>  cs_error_t votequorum_leaving (
>  	votequorum_handle_t handle);
>  
> -/*
> +/**
>   * Save and retrieve private data/context
>   */
>  cs_error_t votequorum_context_get (



More information about the Openais mailing list