gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r24020 - in monkey/trunk/pathologist/src: include pathologi


From: gnunet
Subject: [GNUnet-SVN] r24020 - in monkey/trunk/pathologist/src: include pathologist
Date: Wed, 26 Sep 2012 16:50:41 +0200

Author: teichm
Date: 2012-09-26 16:50:41 +0200 (Wed, 26 Sep 2012)
New Revision: 24020

Added:
   monkey/trunk/pathologist/src/include/monkey_getopt_lib.h
Removed:
   monkey/trunk/pathologist/src/include/gnunet_common.h
   monkey/trunk/pathologist/src/include/gnunet_getopt_lib.h
Modified:
   monkey/trunk/pathologist/src/pathologist/getopt.c
   monkey/trunk/pathologist/src/pathologist/getopt_helpers.c
   monkey/trunk/pathologist/src/pathologist/pathologist.c
Log:
removed GNUNET dependencies

Deleted: monkey/trunk/pathologist/src/include/gnunet_common.h
===================================================================
--- monkey/trunk/pathologist/src/include/gnunet_common.h        2012-09-26 
14:46:32 UTC (rev 24019)
+++ monkey/trunk/pathologist/src/include/gnunet_common.h        2012-09-26 
14:50:41 UTC (rev 24020)
@@ -1,889 +0,0 @@
-/*
-     This file is part of GNUnet.
-     (C) 2006, 2009 Christian Grothoff (and other contributing authors)
-
-     GNUnet is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 2, or (at your
-     option) any later version.
-
-     GNUnet is distributed in the hope that it will be useful, but
-     WITHOUT ANY WARRANTY; without even the implied warranty of
-     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
-
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
-*/
-
-/**
- * @file include/gnunet_common.h
- * @brief commonly used definitions; globals in this file
- *        are exempt from the rule that the module name ("common")
- *        must be part of the symbol name.
- *
- * @author Christian Grothoff
- * @author Nils Durner
- */
-#ifndef GNUNET_COMMON_H
-#define GNUNET_COMMON_H
-
-#if HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#if HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef MINGW
-#include "winproc.h"
-#endif
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#ifdef HAVE_STDARG_H
-#include <stdarg.h>
-#endif
-
-#ifdef __cplusplus
-extern "C"
-{
-#if 0                           /* keep Emacsens' auto-indent happy */
-}
-#endif
-#endif
-
-/**
- * Version of the API (for entire gnunetutil.so library).
- */
-#define GNUNET_UTIL_VERSION 0x00090200
-
-/**
- * Named constants for return values.  The following
- * invariants hold: "GNUNET_NO == 0" (to allow "if (GNUNET_NO)")
- * "GNUNET_OK != GNUNET_SYSERR", "GNUNET_OK != GNUNET_NO", "GNUNET_NO != 
GNUNET_SYSERR"
- * and finally "GNUNET_YES != GNUNET_NO".
- */
-#define GNUNET_OK      1
-#define GNUNET_SYSERR -1
-#define GNUNET_YES     1
-#define GNUNET_NO      0
-
-#define GNUNET_MIN(a,b) (((a) < (b)) ? (a) : (b))
-
-#define GNUNET_MAX(a,b) (((a) > (b)) ? (a) : (b))
-
-/* some systems use one underscore only, and mingw uses no underscore... */
-#ifndef __BYTE_ORDER
-#ifdef _BYTE_ORDER
-#define __BYTE_ORDER _BYTE_ORDER
-#else
-#ifdef BYTE_ORDER
-#define __BYTE_ORDER BYTE_ORDER
-#endif
-#endif
-#endif
-#ifndef __BIG_ENDIAN
-#ifdef _BIG_ENDIAN
-#define __BIG_ENDIAN _BIG_ENDIAN
-#else
-#ifdef BIG_ENDIAN
-#define __BIG_ENDIAN BIG_ENDIAN
-#endif
-#endif
-#endif
-#ifndef __LITTLE_ENDIAN
-#ifdef _LITTLE_ENDIAN
-#define __LITTLE_ENDIAN _LITTLE_ENDIAN
-#else
-#ifdef LITTLE_ENDIAN
-#define __LITTLE_ENDIAN LITTLE_ENDIAN
-#endif
-#endif
-#endif
-
-/**
- * Endian operations
- */
-
-# if __BYTE_ORDER == __LITTLE_ENDIAN
-#  define GNUNET_htobe16(x) __bswap_16 (x)
-#  define GNUNET_htole16(x) (x)
-#  define GNUNET_be16toh(x) __bswap_16 (x)
-#  define GNUNET_le16toh(x) (x)
-
-#  define GNUNET_htobe32(x) __bswap_32 (x)
-#  define GNUNET_htole32(x) (x)
-#  define GNUNET_be32toh(x) __bswap_32 (x)
-#  define GNUNET_le32toh(x) (x)
-
-#  define GNUNET_htobe64(x) __bswap_64 (x)
-#  define GNUNET_htole64(x) (x)
-#  define GNUNET_be64toh(x) __bswap_64 (x)
-#  define GNUNET_le64toh(x) (x)
-#endif
-# if __BYTE_ORDER == __BIG_ENDIAN
-#  define GNUNET_htobe16(x) (x)
-#  define GNUNET_htole16(x) __bswap_16 (x)
-#  define GNUNET_be16toh(x) (x)
-#  define GNUNET_le16toh(x) __bswap_16 (x)
-
-#  define GNUNET_htobe32(x) (x)
-#  define GNUNET_htole32(x) __bswap_32 (x)
-#  define GNUNET_be32toh(x) (x)
-#  define GNUNET_le32toh(x) __bswap_32 (x)
-
-#  define GNUNET_htobe64(x) (x)
-#  define GNUNET_htole64(x) __bswap_64 (x)
-#  define GNUNET_be64toh(x) (x)
-#  define GNUNET_le64toh(x) __bswap_64 (x)
-#endif
-
-
-
-
-/**
- * gcc-ism to get packed structs.
- */
-#define GNUNET_PACKED __attribute__((packed))
-
-/**
- * gcc-ism to get gcc bitfield layout when compiling with -mms-bitfields
- */
-#if MINGW
-#define GNUNET_GCC_STRUCT_LAYOUT __attribute__((gcc_struct))
-#else
-#define GNUNET_GCC_STRUCT_LAYOUT
-#endif
-
-/**
- * gcc-ism to force alignment; we use this to align char-arrays
- * that may then be cast to 'struct's.  See also gcc
- * bug #33594.
- */
-#ifdef __BIGGEST_ALIGNMENT__
-#define GNUNET_ALIGN __attribute__((aligned (__BIGGEST_ALIGNMENT__)))
-#else
-#define GNUNET_ALIGN __attribute__((aligned (8)))
-#endif
-
-/**
- * gcc-ism to document unused arguments
- */
-#define GNUNET_UNUSED __attribute__((unused))
-
-/**
- * gcc-ism to document functions that don't return
- */
-#define GNUNET_NORETURN __attribute__((noreturn))
-
-#if MINGW
-#if __GNUC__ > 3
-/**
- * gcc 4.x-ism to pack structures even on W32 (to be used before structs);
- * Using this would cause structs to be unaligned on the stack on Sparc,
- * so we *only* use this on W32 (see #670578 from Debian); fortunately,
- * W32 doesn't run on sparc anyway.
- */
-#define GNUNET_NETWORK_STRUCT_BEGIN \
-  _Pragma("pack(push)") \
-  _Pragma("pack(1)")
-
-/**
- * gcc 4.x-ism to pack structures even on W32 (to be used after structs)
- * Using this would cause structs to be unaligned on the stack on Sparc,
- * so we *only* use this on W32 (see #670578 from Debian); fortunately,
- * W32 doesn't run on sparc anyway.
- */
-#define GNUNET_NETWORK_STRUCT_END _Pragma("pack(pop)")
-
-#else
-#error gcc 4.x or higher required on W32 systems
-#endif
-#else
-/**
- * Define as empty, GNUNET_PACKED should suffice, but this won't work on W32
- */
-#define GNUNET_NETWORK_STRUCT_BEGIN 
-
-/**
- * Define as empty, GNUNET_PACKED should suffice, but this won't work on W32;
- */
-#define GNUNET_NETWORK_STRUCT_END
-#endif
-
-/* ************************ super-general types *********************** */
-
-GNUNET_NETWORK_STRUCT_BEGIN
-
-/**
- * Header for all communications.
- */
-struct GNUNET_MessageHeader
-{
-
-  /**
-   * The length of the struct (in bytes, including the length field itself),
-   * in big-endian format.
-   */
-  uint16_t size GNUNET_PACKED;
-
-  /**
-   * The type of the message (GNUNET_MESSAGE_TYPE_XXXX), in big-endian format.
-   */
-  uint16_t type GNUNET_PACKED;
-
-};
-
-
-/**
- * @brief 512-bit hashcode
- */
-struct GNUNET_HashCode
-{
-  uint32_t bits[512 / 8 / sizeof (uint32_t)];   /* = 16 */
-};
-
-
-/**
- * The identity of the host (basically the SHA-512 hashcode of
- * it's public key).
- */
-struct GNUNET_PeerIdentity
-{
-  struct GNUNET_HashCode hashPubKey;
-};
-GNUNET_NETWORK_STRUCT_END
-
-/**
- * Function called with a filename.
- *
- * @param cls closure
- * @param filename complete filename (absolute path)
- * @return GNUNET_OK to continue to iterate,
- *  GNUNET_SYSERR to abort iteration with error!
- */
-typedef int (*GNUNET_FileNameCallback) (void *cls, const char *filename);
-
-
-/* ****************************** logging ***************************** */
-
-/**
- * Types of errors.
- */
-enum GNUNET_ErrorType
-{
-  GNUNET_ERROR_TYPE_UNSPECIFIED = -1,
-  GNUNET_ERROR_TYPE_NONE = 0,
-  GNUNET_ERROR_TYPE_ERROR = 1,
-  GNUNET_ERROR_TYPE_WARNING = 2,
-  GNUNET_ERROR_TYPE_INFO = 4,
-  GNUNET_ERROR_TYPE_DEBUG = 8,
-  GNUNET_ERROR_TYPE_INVALID = 16,
-  GNUNET_ERROR_TYPE_BULK = 32
-};
-
-
-/**
- * User-defined handler for log messages.
- *
- * @param cls closure
- * @param kind severeity
- * @param component what component is issuing the message?
- * @param date when was the message logged?
- * @param message what is the message
- */
-typedef void (*GNUNET_Logger) (void *cls, enum GNUNET_ErrorType kind,
-                               const char *component, const char *date,
-                               const char *message);
-
-
-/**
- * Get the number of log calls that are going to be skipped
- *
- * @return number of log calls to be ignored
- */
-int
-GNUNET_get_log_skip ();
-
-#if !defined(GNUNET_CULL_LOGGING)
-int
-GNUNET_get_log_call_status (int caller_level, const char *comp,
-                            const char *file, const char *function, int line);
-#endif
-/**
- * Main log function.
- *
- * @param kind how serious is the error?
- * @param message what is the message (format string)
- * @param ... arguments for format string
- */
-void
-GNUNET_log_nocheck (enum GNUNET_ErrorType kind, const char *message, ...);
-
-/* from glib */
-#if defined(__GNUC__) && (__GNUC__ > 2) && defined(__OPTIMIZE__)
-#define _GNUNET_BOOLEAN_EXPR(expr)              \
- __extension__ ({                               \
-   int _gnunet_boolean_var_;                    \
-   if (expr)                                    \
-      _gnunet_boolean_var_ = 1;                 \
-   else                                         \
-      _gnunet_boolean_var_ = 0;                 \
-   _gnunet_boolean_var_;                        \
-})
-#define GN_LIKELY(expr) (__builtin_expect (_GNUNET_BOOLEAN_EXPR(expr), 1))
-#define GN_UNLIKELY(expr) (__builtin_expect (_GNUNET_BOOLEAN_EXPR(expr), 0))
-#else
-#define GN_LIKELY(expr) (expr)
-#define GN_UNLIKELY(expr) (expr)
-#endif
-
-#if !defined(GNUNET_LOG_CALL_STATUS)
-#define GNUNET_LOG_CALL_STATUS -1
-#endif
-
-/**
- * Log function that specifies an alternative component.
- * This function should be used by plugins.
- *
- * @param kind how serious is the error?
- * @param comp component responsible for generating the message
- * @param message what is the message (format string)
- * @param ... arguments for format string
- */
-void
-GNUNET_log_from_nocheck (enum GNUNET_ErrorType kind, const char *comp,
-                         const char *message, ...);
-
-#if !defined(GNUNET_CULL_LOGGING)
-#define GNUNET_log_from(kind,comp,...) do { int log_line = __LINE__;\
-  static int log_call_enabled = GNUNET_LOG_CALL_STATUS;\
-  if ((GNUNET_EXTRA_LOGGING > 0) || ((GNUNET_ERROR_TYPE_DEBUG & (kind)) == 0)) 
{ \
-    if (GN_UNLIKELY(log_call_enabled == -1))\
-      log_call_enabled = GNUNET_get_log_call_status ((kind) & 
(~GNUNET_ERROR_TYPE_BULK), (comp), __FILE__, __FUNCTION__, log_line); \
-    if (GN_UNLIKELY(GNUNET_get_log_skip () > 0)) { GNUNET_log_skip (-1, 
GNUNET_NO); }\
-    else {\
-      if (GN_UNLIKELY(log_call_enabled))\
-        GNUNET_log_from_nocheck ((kind), comp, __VA_ARGS__);   \
-    }\
-  }\
-} while (0)
-
-#define GNUNET_log(kind,...) do { int log_line = __LINE__;\
-  static int log_call_enabled = GNUNET_LOG_CALL_STATUS;\
-  if ((GNUNET_EXTRA_LOGGING > 0) || ((GNUNET_ERROR_TYPE_DEBUG & (kind)) == 0)) 
{ \
-    if (GN_UNLIKELY(log_call_enabled == -1))\
-      log_call_enabled = GNUNET_get_log_call_status ((kind) & 
(~GNUNET_ERROR_TYPE_BULK), NULL, __FILE__, __FUNCTION__, log_line);\
-    if (GN_UNLIKELY(GNUNET_get_log_skip () > 0)) { GNUNET_log_skip (-1, 
GNUNET_NO); }\
-    else {\
-      if (GN_UNLIKELY(log_call_enabled))\
-        GNUNET_log_nocheck ((kind), __VA_ARGS__);      \
-    }\
-  }\
-} while (0)
-#else
-#define GNUNET_log(...)
-#define GNUNET_log_from(...)
-#endif
-
-
-/**
- * Abort the process, generate a core dump if possible.
- */
-void
-GNUNET_abort (void) GNUNET_NORETURN;
-
-/**
- * Ignore the next n calls to the log function.
- *
- * @param n number of log calls to ignore (could be negative)
- * @param check_reset GNUNET_YES to assert that the log skip counter is 
currently zero
- */
-void
-GNUNET_log_skip (int n, int check_reset);
-
-
-/**
- * Setup logging.
- *
- * @param comp default component to use
- * @param loglevel what types of messages should be logged
- * @param logfile change logging to logfile (use NULL to keep stderr)
- * @return GNUNET_OK on success, GNUNET_SYSERR if logfile could not be opened
- */
-int
-GNUNET_log_setup (const char *comp, const char *loglevel, const char *logfile);
-
-
-/**
- * Add a custom logger.
- *
- * @param logger log function
- * @param logger_cls closure for logger
- */
-void
-GNUNET_logger_add (GNUNET_Logger logger, void *logger_cls);
-
-
-/**
- * Remove a custom logger.
- *
- * @param logger log function
- * @param logger_cls closure for logger
- */
-void
-GNUNET_logger_remove (GNUNET_Logger logger, void *logger_cls);
-
-
-/**
- * Convert a hash value to a string (for printing debug messages).
- * This is one of the very few calls in the entire API that is
- * NOT reentrant!
- *
- * @param hc the hash code
- * @return string
- */
-const char *
-GNUNET_h2s (const struct GNUNET_HashCode * hc);
-
-
-/**
- * Convert a hash value to a string (for printing debug messages).
- * This prints all 104 characters of a hashcode!
- * This is one of the very few calls in the entire API that is
- * NOT reentrant!
- *
- * @param hc the hash code
- * @return string
- */
-const char *
-GNUNET_h2s_full (const struct GNUNET_HashCode * hc);
-
-
-/**
- * Convert a peer identity to a string (for printing debug messages).
- * This is one of the very few calls in the entire API that is
- * NOT reentrant!
- *
- * @param pid the peer identity
- * @return string form of the pid; will be overwritten by next
- *         call to GNUNET_i2s.
- */
-const char *
-GNUNET_i2s (const struct GNUNET_PeerIdentity *pid);
-
-/**
- * Convert a peer identity to a string (for printing debug messages).
- * This is one of the very few calls in the entire API that is
- * NOT reentrant!
- *
- * @param pid the peer identity
- * @return string form of the pid; will be overwritten by next
- *         call to GNUNET_i2s.
- */
-const char *
-GNUNET_i2s_full (const struct GNUNET_PeerIdentity *pid);
-
-/**
- * Convert a "struct sockaddr*" (IPv4 or IPv6 address) to a string
- * (for printing debug messages).  This is one of the very few calls
- * in the entire API that is NOT reentrant!
- *
- * @param addr the address
- * @param addrlen the length of the address
- * @return nicely formatted string for the address
- *  will be overwritten by next call to GNUNET_a2s.
- */
-const char *
-GNUNET_a2s (const struct sockaddr *addr, socklen_t addrlen);
-
-/**
- * Convert error type to string.
- *
- * @param kind type to convert
- * @return string corresponding to the type
- */
-const char *
-GNUNET_error_type_to_string (enum GNUNET_ErrorType kind);
-
-
-/**
- * Use this for fatal errors that cannot be handled
- */
-#define GNUNET_assert(cond) do { if (! (cond)) { 
GNUNET_log(GNUNET_ERROR_TYPE_ERROR, _("Assertion failed at %s:%d.\n"), 
__FILE__, __LINE__); GNUNET_abort(); } } while(0)
-
-/**
- * Use this for fatal errors that cannot be handled
- */
-#define GNUNET_assert_at(cond, f, l) do { if (! (cond)) { 
GNUNET_log(GNUNET_ERROR_TYPE_ERROR, _("Assertion failed at %s:%d.\n"), f, l); 
GNUNET_abort(); } } while(0)
-
-/**
- * Use this for internal assertion violations that are
- * not fatal (can be handled) but should not occur.
- */
-#define GNUNET_break(cond)  do { if (! (cond)) { 
GNUNET_log(GNUNET_ERROR_TYPE_ERROR, _("Assertion failed at %s:%d.\n"), 
__FILE__, __LINE__); } } while(0)
-
-/**
- * Use this for assertion violations caused by other
- * peers (i.e. protocol violations).  We do not want to
- * confuse end-users (say, some other peer runs an
- * older, broken or incompatible GNUnet version), but
- * we still want to see these problems during
- * development and testing.  "OP == other peer".
- */
-#define GNUNET_break_op(cond)  do { if (! (cond)) { 
GNUNET_log(GNUNET_ERROR_TYPE_WARNING | GNUNET_ERROR_TYPE_BULK, _("External 
protocol violation detected at %s:%d.\n"), __FILE__, __LINE__); } } while(0)
-
-/**
- * Log an error message at log-level 'level' that indicates
- * a failure of the command 'cmd' with the message given
- * by strerror(errno).
- */
-#define GNUNET_log_strerror(level, cmd) do { GNUNET_log(level, _("`%s' failed 
at %s:%d with error: %s\n"), cmd, __FILE__, __LINE__, STRERROR(errno)); } 
while(0)
-
-/**
- * Log an error message at log-level 'level' that indicates
- * a failure of the command 'cmd' with the message given
- * by strerror(errno).
- */
-#define GNUNET_log_from_strerror(level, component, cmd) do { GNUNET_log_from 
(level, component, _("`%s' failed at %s:%d with error: %s\n"), cmd, __FILE__, 
__LINE__, STRERROR(errno)); } while(0)
-
-/**
- * Log an error message at log-level 'level' that indicates
- * a failure of the command 'cmd' with the message given
- * by strerror(errno).
- */
-#define GNUNET_log_strerror_file(level, cmd, filename) do { GNUNET_log(level, 
_("`%s' failed on file `%s' at %s:%d with error: %s\n"), cmd, 
filename,__FILE__, __LINE__, STRERROR(errno)); } while(0)
-
-/**
- * Log an error message at log-level 'level' that indicates
- * a failure of the command 'cmd' with the message given
- * by strerror(errno).
- */
-#define GNUNET_log_from_strerror_file(level, component, cmd, filename) do { 
GNUNET_log_from (level, component, _("`%s' failed on file `%s' at %s:%d with 
error: %s\n"), cmd, filename,__FILE__, __LINE__, STRERROR(errno)); } while(0)
-
-/* ************************* endianess conversion ****************** */
-
-/**
- * Convert unsigned 64-bit integer to host-byte-order.
- * @param n the value in network byte order
- * @return the same value in host byte order
- */
-uint64_t
-GNUNET_ntohll (uint64_t n);
-
-/**
- * Convert unsigned 64-bit integer to network-byte-order.
- * @param n the value in host byte order
- * @return the same value in network byte order
- */
-uint64_t
-GNUNET_htonll (uint64_t n);
-
-/**
- * Convert double to network-byte-order.
- * @param d the value in network byte order
- * @return the same value in host byte order
- */
-double 
-GNUNET_hton_double (double d);
-
-/**
- * Convert double to host-byte-order
- * @param d the value in network byte order
- * @return the same value in host byte order
- */
-double 
-GNUNET_ntoh_double (double d);
-
-/* ************************* allocation functions ****************** */
-
-/**
- * Maximum allocation with GNUNET_malloc macro.
- */
-#define GNUNET_MAX_MALLOC_CHECKED (1024 * 1024 * 40)
-
-/**
- * Wrapper around malloc. Allocates size bytes of memory.
- * The memory will be zero'ed out.
- *
- * @param size the number of bytes to allocate, must be
- *        smaller than 40 MB.
- * @return pointer to size bytes of memory, never NULL (!)
- */
-#define GNUNET_malloc(size) GNUNET_xmalloc_(size, __FILE__, __LINE__)
-
-/**
- * Allocate and initialize a block of memory.
- *
- * @param buf data to initalize the block with
- * @param size the number of bytes in buf (and size of the allocation)
- * @return pointer to size bytes of memory, never NULL (!)
- */
-#define GNUNET_memdup(buf,size) GNUNET_xmemdup_(buf, size, __FILE__, __LINE__)
-
-/**
- * Wrapper around malloc. Allocates size bytes of memory.
- * The memory will be zero'ed out.
- *
- * @param size the number of bytes to allocate
- * @return pointer to size bytes of memory, NULL if we do not have enough 
memory
- */
-#define GNUNET_malloc_large(size) GNUNET_xmalloc_unchecked_(size, __FILE__, 
__LINE__)
-
-/**
- * Wrapper around realloc. Rellocates size bytes of memory.
- *
- * @param ptr the pointer to reallocate
- * @param size the number of bytes to reallocate
- * @return pointer to size bytes of memory
- */
-#define GNUNET_realloc(ptr, size) GNUNET_xrealloc_(ptr, size, __FILE__, 
__LINE__)
-
-/**
- * Wrapper around free. Frees the memory referred to by ptr.
- * Note that is is generally better to free memory that was
- * allocated with GNUNET_array_grow using GNUNET_array_grow(mem, size, 0) 
instead of GNUNET_free.
- *
- * @param ptr location where to free the memory. ptr must have
- *     been returned by GNUNET_strdup, GNUNET_strndup, GNUNET_malloc or 
GNUNET_array_grow earlier.
- */
-#define GNUNET_free(ptr) GNUNET_xfree_(ptr, __FILE__, __LINE__)
-
-/**
- * Free the memory pointed to by ptr if ptr is not NULL.
- * Equivalent to if (ptr!=null)GNUNET_free(ptr).
- *
- * @param ptr the location in memory to free
- */
-#define GNUNET_free_non_null(ptr) do { void * __x__ = ptr; if (__x__ != NULL) 
{ GNUNET_free(__x__); } } while(0)
-
-/**
- * Wrapper around GNUNET_strdup.  Makes a copy of the zero-terminated string
- * pointed to by a.
- *
- * @param a pointer to a zero-terminated string
- * @return a copy of the string including zero-termination
- */
-#define GNUNET_strdup(a) GNUNET_xstrdup_(a,__FILE__,__LINE__)
-
-/**
- * Wrapper around GNUNET_strndup.  Makes a partial copy of the string
- * pointed to by a.
- *
- * @param a pointer to a string
- * @param length of the string to duplicate
- * @return a partial copy of the string including zero-termination
- */
-#define GNUNET_strndup(a,length) GNUNET_xstrndup_(a,length,__FILE__,__LINE__)
-
-/**
- * Grow a well-typed (!) array.  This is a convenience
- * method to grow a vector <tt>arr</tt> of size <tt>size</tt>
- * to the new (target) size <tt>tsize</tt>.
- * <p>
- *
- * Example (simple, well-typed stack):
- *
- * <pre>
- * static struct foo * myVector = NULL;
- * static int myVecLen = 0;
- *
- * static void push(struct foo * elem) {
- *   GNUNET_array_grow(myVector, myVecLen, myVecLen+1);
- *   memcpy(&myVector[myVecLen-1], elem, sizeof(struct foo));
- * }
- *
- * static void pop(struct foo * elem) {
- *   if (myVecLen == 0) die();
- *   memcpy(elem, myVector[myVecLen-1], sizeof(struct foo));
- *   GNUNET_array_grow(myVector, myVecLen, myVecLen-1);
- * }
- * </pre>
- *
- * @param arr base-pointer of the vector, may be NULL if size is 0;
- *        will be updated to reflect the new address. The TYPE of
- *        arr is important since size is the number of elements and
- *        not the size in bytes
- * @param size the number of elements in the existing vector (number
- *        of elements to copy over)
- * @param tsize the target size for the resulting vector, use 0 to
- *        free the vector (then, arr will be NULL afterwards).
- */
-#define GNUNET_array_grow(arr,size,tsize) GNUNET_xgrow_((void**)&arr, 
sizeof(arr[0]), &size, tsize, __FILE__, __LINE__)
-
-/**
- * Append an element to a list (growing the
- * list by one).
- */
-#define GNUNET_array_append(arr,size,element) do { 
GNUNET_array_grow(arr,size,size+1); arr[size-1] = element; } while(0)
-
-/**
- * Like snprintf, just aborts if the buffer is of insufficient size.
- *
- * @param buf pointer to buffer that is written to
- * @param size number of bytes in buf
- * @param format format strings
- * @param ... data for format string
- * @return number of bytes written to buf or negative value on error
- */
-int
-GNUNET_snprintf (char *buf, size_t size, const char *format, ...);
-
-
-/**
- * Like asprintf, just portable.
- *
- * @param buf set to a buffer of sufficient size (allocated, caller must free)
- * @param format format string (see printf, fprintf, etc.)
- * @param ... data for format string
- * @return number of bytes in "*buf" excluding 0-termination
- */
-int
-GNUNET_asprintf (char **buf, const char *format, ...);
-
-
-/* ************** internal implementations, use macros above! ************** */
-
-/**
- * Allocate memory. Checks the return value, aborts if no more
- * memory is available.  Don't use GNUNET_xmalloc_ directly. Use the
- * GNUNET_malloc macro.
- * The memory will be zero'ed out.
- *
- * @param size number of bytes to allocate
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- * @return allocated memory, never NULL
- */
-void *
-GNUNET_xmalloc_ (size_t size, const char *filename, int linenumber);
-
-
-/**
- * Allocate and initialize memory. Checks the return value, aborts if no more
- * memory is available.  Don't use GNUNET_xmemdup_ directly. Use the
- * GNUNET_memdup macro.
- *
- * @param buf buffer to initialize from (must contain size bytes)
- * @param size number of bytes to allocate
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- * @return allocated memory, never NULL
- */
-void *
-GNUNET_xmemdup_ (const void *buf, size_t size, const char *filename,
-                 int linenumber);
-
-
-/**
- * Allocate memory.  This function does not check if the allocation
- * request is within reasonable bounds, allowing allocations larger
- * than 40 MB.  If you don't expect the possibility of very large
- * allocations, use GNUNET_malloc instead.  The memory will be zero'ed
- * out.
- *
- * @param size number of bytes to allocate
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- * @return pointer to size bytes of memory, NULL if we do not have enough 
memory
- */
-void *
-GNUNET_xmalloc_unchecked_ (size_t size, const char *filename, int linenumber);
-
-/**
- * Reallocate memory. Checks the return value, aborts if no more
- * memory is available.
- */
-void *
-GNUNET_xrealloc_ (void *ptr, size_t n, const char *filename, int linenumber);
-
-/**
- * Free memory. Merely a wrapper for the case that we
- * want to keep track of allocations.  Don't use GNUNET_xfree_
- * directly. Use the GNUNET_free macro.
- *
- * @param ptr pointer to memory to free
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- */
-void
-GNUNET_xfree_ (void *ptr, const char *filename, int linenumber);
-
-
-/**
- * Dup a string. Don't call GNUNET_xstrdup_ directly. Use the GNUNET_strdup 
macro.
- * @param str string to duplicate
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- * @return the duplicated string
- */
-char *
-GNUNET_xstrdup_ (const char *str, const char *filename, int linenumber);
-
-/**
- * Dup partially a string. Don't call GNUNET_xstrndup_ directly. Use the 
GNUNET_strndup macro.
- *
- * @param str string to duplicate
- * @param len length of the string to duplicate
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- * @return the duplicated string
- */
-char *
-GNUNET_xstrndup_ (const char *str, size_t len, const char *filename,
-                  int linenumber);
-
-/**
- * Grow an array, the new elements are zeroed out.
- * Grows old by (*oldCount-newCount)*elementSize
- * bytes and sets *oldCount to newCount.
- *
- * Don't call GNUNET_xgrow_ directly. Use the GNUNET_array_grow macro.
- *
- * @param old address of the pointer to the array
- *        *old may be NULL
- * @param elementSize the size of the elements of the array
- * @param oldCount address of the number of elements in the *old array
- * @param newCount number of elements in the new array, may be 0 (then *old 
will be NULL afterwards)
- * @param filename where is this call being made (for debugging)
- * @param linenumber line where this call is being made (for debugging)
- */
-void
-GNUNET_xgrow_ (void **old, size_t elementSize, unsigned int *oldCount,
-               unsigned int newCount, const char *filename, int linenumber);
-
-
-/**
- * Create a copy of the given message.
- *
- * @param msg message to copy
- * @return duplicate of the message
- */
-struct GNUNET_MessageHeader *
-GNUNET_copy_message (const struct GNUNET_MessageHeader *msg);
-
-
-#if __STDC_VERSION__ < 199901L
-#if __GNUC__ >= 2
-#define __func__ __FUNCTION__
-#else
-#define __func__ "<unknown>"
-#endif
-#endif
-
-
-
-
-#if 0                           /* keep Emacsens' auto-indent happy */
-{
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-
-
-
-#endif /*GNUNET_COMMON_H_ */

Deleted: monkey/trunk/pathologist/src/include/gnunet_getopt_lib.h
===================================================================
--- monkey/trunk/pathologist/src/include/gnunet_getopt_lib.h    2012-09-26 
14:46:32 UTC (rev 24019)
+++ monkey/trunk/pathologist/src/include/gnunet_getopt_lib.h    2012-09-26 
14:50:41 UTC (rev 24020)
@@ -1,367 +0,0 @@
-/*
-     This file is part of GNUnet.
-     (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2011 Christian Grothoff 
(and other contributing authors)
-
-     GNUnet is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 2, or (at your
-     option) any later version.
-
-     GNUnet is distributed in the hope that it will be useful, but
-     WITHOUT ANY WARRANTY; without even the implied warranty of
-     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
-
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
-*/
-
-/**
- * @file include/gnunet_getopt_lib.h
- * @brief command line parsing and --help formatting
- *
- * @author Christian Grothoff
- */
-
-#ifndef GNUNET_GETOPT_LIB_H
-#define GNUNET_GETOPT_LIB_H
-
-#ifdef __cplusplus
-extern "C"
-{
-#if 0                           /* keep Emacsens' auto-indent happy */
-}
-#endif
-#endif
-
-//#include "gnunet_configuration_lib.h"
-
-/**
- * @brief General context for command line processors.
- */
-struct GNUNET_GETOPT_CommandLineProcessorContext
-{
-
-  /**
-   * Name of the application
-   */
-  const char *binaryName;
-
-  /**
-   * Name of application with option summary
-   */
-  const char *binaryOptions;
-
-  /**
-   * Array with all command line options.
-   */
-  const struct GNUNET_GETOPT_CommandLineOption *allOptions;
-
-  /**
-   * Original command line
-   */
-  char *const *argv;
-
-  /**
-   * Total number of argv's.
-   */
-  unsigned int argc;
-
-  /**
-   * Current argument.
-   */
-  unsigned int currentArgument;
-
-};
-
-/**
- * @brief Process a command line option
- *
- * @param ctx context for all options
- * @param scls specific closure (for this processor)
- * @param option long name of the option (i.e. "config" for --config)
- * @param value argument, NULL if none was given
- * @return GNUNET_OK to continue processing other options, GNUNET_SYSERR to 
abort
- */
-typedef int (*GNUNET_GETOPT_CommandLineOptionProcessor) (struct
-                                                         
GNUNET_GETOPT_CommandLineProcessorContext
-                                                         * ctx, void *scls,
-                                                         const char *option,
-                                                         const char *value);
-
-/**
- * @brief Definition of a command line option.
- */
-struct GNUNET_GETOPT_CommandLineOption
-{
-
-  /**
-   * Short name of the option (use '\\0' for none).
-   */
-  const char shortName;
-
-  /**
-   * Long name of the option (may not be NULL)
-   */
-  const char *name;
-
-  /**
-   * Name of the argument for the user in help text
-   */
-  const char *argumentHelp;
-
-  /**
-   * Help text for the option (description)
-   */
-  const char *description;
-
-  /**
-   * Is an argument required?  0: GNUNET_NO (includes optional), 1: GNUNET_YES.
-   */
-  int require_argument;
-
-  /**
-   * Handler for the option.
-   */
-  GNUNET_GETOPT_CommandLineOptionProcessor processor;
-
-  /**
-   * Specific closure to pass to the processor.
-   */
-  void *scls;
-
-};
-
-/**
- * Macro defining the option to print the command line
- * help text (-h option).
- *
- * @param about string with brief description of the application
- */
-#define GNUNET_GETOPT_OPTION_HELP(about) \
-  { 'h', "help", (const char *) NULL, gettext_noop("print this help"), 0, 
&GNUNET_GETOPT_format_help_, (void *) about }
-
-
-/**
- * Macro defining the option to print the version of
- * the application (-v option)
- *
- * @param version string with the version number
- */
-#define GNUNET_GETOPT_OPTION_VERSION(version) \
-  { 'v', "version", (const char *) NULL, gettext_noop("print the version 
number"), 0, &GNUNET_GETOPT_print_version_, (void *) version }
-
-
-/**
- * Allow user to specify log file name (-l option)
- *
- * @param logfn set to the name of the logfile
- */
-#define GNUNET_GETOPT_OPTION_LOGFILE(logfn)                            \
-  { 'l', "logfile", "LOGFILE", gettext_noop("configure logging to write logs 
to LOGFILE"), 1, &GNUNET_GETOPT_set_string, (void *) logfn }
-
-
-/**
- * Allow user to specify log level (-L option)
- *
- * @param loglev set to the log level
- */
-#define GNUNET_GETOPT_OPTION_LOGLEVEL(loglev)                          \
-  { 'L', "log", "LOGLEVEL", gettext_noop("configure logging to use LOGLEVEL"), 
1, &GNUNET_GETOPT_set_string, (void *) loglev }
-
-
-/**
- * Get number of verbose (-V) flags
- *
- * @param level where to store the verbosity level (should be an 'int')
- */
-#define GNUNET_GETOPT_OPTION_VERBOSE(level)                            \
-  { 'V', "verbose", (const char *) NULL, gettext_noop("be verbose"), 0, 
&GNUNET_GETOPT_increment_value, (void *) level }
-
-
-/**
- * Get configuration file name (-c option)
- *
- * @param fn set to the configuration file name
- */
-#define GNUNET_GETOPT_OPTION_CFG_FILE(fn)                              \
-  { 'c', "config", "FILENAME", gettext_noop("use configuration file 
FILENAME"), 1, &GNUNET_GETOPT_set_string, (void *) fn }
-
-
-/**
- * Marker for the end of the list of options.
- */
-#define GNUNET_GETOPT_OPTION_END \
-  { '\0', NULL, NULL, NULL, 0, NULL, NULL }
-
-
-/**
- * Parse the command line.
- *
- * @param binaryOptions Name of application with option summary
- * @param allOptions defined options and handlers
- * @param argc number of arguments
- * @param argv actual arguments
- * @return index into argv with first non-option
- *   argument, or GNUNET_SYSERR on error
- */
-int
-GNUNET_GETOPT_run (const char *binaryOptions,
-                   const struct GNUNET_GETOPT_CommandLineOption *allOptions,
-                   unsigned int argc, char *const *argv);
-
-
-/**
- * Set an option of type 'unsigned long long' from the command line.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'unsigned long long'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'unsigned long long')
- * @param option name of the option
- * @param value actual value of the option as a string.
- * @return GNUNET_OK if parsing the value worked
- */
-int
-GNUNET_GETOPT_set_ulong (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
-                         void *scls, const char *option, const char *value);
-
-
-/**
- * Set an option of type 'struct GNUNET_TIME_Relative' from the command line.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'struct GNUNET_TIME_Relative'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'struct 
GNUNET_TIME_Relative')
- * @param option name of the option
- * @param value actual value of the option as a string.
- * @return GNUNET_OK if parsing the value worked
- */
-int
-GNUNET_GETOPT_set_relative_time (struct 
GNUNET_GETOPT_CommandLineProcessorContext *ctx,
-                                void *scls, const char *option, const char 
*value);
-
-
-/**
- * Set an option of type 'unsigned int' from the command line.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'unsigned int'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'unsigned int')
- * @param option name of the option
- * @param value actual value of the option as a string.
- * @return GNUNET_OK if parsing the value worked
- */
-int
-GNUNET_GETOPT_set_uint (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
-                        void *scls, const char *option, const char *value);
-
-
-/**
- * Set an option of type 'int' from the command line to 1 if the
- * given option is present.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'int'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'int')
- * @param option name of the option
- * @param value not used (NULL)
- * @return GNUNET_OK
- */
-int
-GNUNET_GETOPT_set_one (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
-                       void *scls, const char *option, const char *value);
-
-
-/**
- * Set an option of type 'char *' from the command line.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'char *'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'char *',
- *             which will be allocated)
- * @param option name of the option
- * @param value actual value of the option (a string)
- * @return GNUNET_OK
- */
-int
-GNUNET_GETOPT_set_string (struct GNUNET_GETOPT_CommandLineProcessorContext 
*ctx,
-                          void *scls, const char *option, const char *value);
-
-/**
- * Set an option of type 'unsigned int' from the command line. Each
- * time the option flag is given, the value is incremented by one.
- * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
- * of this type.  It should be followed by a pointer to a value of
- * type 'int'.
- *
- * @param ctx command line processing context
- * @param scls additional closure (will point to the 'int')
- * @param option name of the option
- * @param value not used (NULL)
- * @return GNUNET_OK
- */
-int
-GNUNET_GETOPT_increment_value (struct GNUNET_GETOPT_CommandLineProcessorContext
-                               *ctx, void *scls, const char *option,
-                               const char *value);
-
-
-/* *************** internal prototypes - use macros above! ************* */
-
-/**
- * Print out details on command line options (implements --help).
- *
- * @param ctx command line processing context
- * @param scls additional closure (points to about text)
- * @param option name of the option
- * @param value not used (NULL)
- * @return GNUNET_SYSERR (do not continue)
- */
-int
-GNUNET_GETOPT_format_help_ (struct GNUNET_GETOPT_CommandLineProcessorContext
-                            *ctx, void *scls, const char *option,
-                            const char *value);
-
-/**
- * Print out program version (implements --version).
- *
- * @param ctx command line processing context
- * @param scls additional closure (points to version string)
- * @param option name of the option
- * @param value not used (NULL)
- * @return GNUNET_SYSERR (do not continue)
- */
-int
-GNUNET_GETOPT_print_version_ (struct GNUNET_GETOPT_CommandLineProcessorContext
-                              *ctx, void *scls, const char *option,
-                              const char *value);
-
-#if 0                           /* keep Emacsens' auto-indent happy */
-{
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-
-/* ifndef GNUNET_GETOPT_LIB_H */
-#endif
-/* end of gnunet_getopt_lib.h */

Added: monkey/trunk/pathologist/src/include/monkey_getopt_lib.h
===================================================================
--- monkey/trunk/pathologist/src/include/monkey_getopt_lib.h                    
        (rev 0)
+++ monkey/trunk/pathologist/src/include/monkey_getopt_lib.h    2012-09-26 
14:50:41 UTC (rev 24020)
@@ -0,0 +1,367 @@
+/*
+     This file is part of GNUnet.
+     (C) 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2011 Christian Grothoff 
(and other contributing authors)
+
+     GNUnet is free software; you can redistribute it and/or modify
+     it under the terms of the GNU General Public License as published
+     by the Free Software Foundation; either version 2, or (at your
+     option) any later version.
+
+     GNUnet is distributed in the hope that it will be useful, but
+     WITHOUT ANY WARRANTY; without even the implied warranty of
+     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+     General Public License for more details.
+
+     You should have received a copy of the GNU General Public License
+     along with GNUnet; see the file COPYING.  If not, write to the
+     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+     Boston, MA 02111-1307, USA.
+*/
+
+/**
+ * @file include/gnunet_getopt_lib.h
+ * @brief command line parsing and --help formatting
+ *
+ * @author Christian Grothoff
+ */
+
+#ifndef MONKEY_GETOPT_LIB_H
+#define MONKEY_GETOPT_LIB_H
+
+#ifdef __cplusplus
+extern "C"
+{
+#if 0                           /* keep Emacsens' auto-indent happy */
+}
+#endif
+#endif
+
+//#include "gnunet_configuration_lib.h"
+
+/**
+ * @brief General context for command line processors.
+ */
+struct MONKEY_GETOPT_CommandLineProcessorContext
+{
+
+  /**
+   * Name of the application
+   */
+  const char *binaryName;
+
+  /**
+   * Name of application with option summary
+   */
+  const char *binaryOptions;
+
+  /**
+   * Array with all command line options.
+   */
+  const struct MONKEY_GETOPT_CommandLineOption *allOptions;
+
+  /**
+   * Original command line
+   */
+  char *const *argv;
+
+  /**
+   * Total number of argv's.
+   */
+  unsigned int argc;
+
+  /**
+   * Current argument.
+   */
+  unsigned int currentArgument;
+
+};
+
+/**
+ * @brief Process a command line option
+ *
+ * @param ctx context for all options
+ * @param scls specific closure (for this processor)
+ * @param option long name of the option (i.e. "config" for --config)
+ * @param value argument, NULL if none was given
+ * @return MONKEY_OK to continue processing other options, MONKEY_SYSERR to 
abort
+ */
+typedef int (*MONKEY_GETOPT_CommandLineOptionProcessor) (struct
+                                                         
MONKEY_GETOPT_CommandLineProcessorContext
+                                                         * ctx, void *scls,
+                                                         const char *option,
+                                                         const char *value);
+
+/**
+ * @brief Definition of a command line option.
+ */
+struct MONKEY_GETOPT_CommandLineOption
+{
+
+  /**
+   * Short name of the option (use '\\0' for none).
+   */
+  const char shortName;
+
+  /**
+   * Long name of the option (may not be NULL)
+   */
+  const char *name;
+
+  /**
+   * Name of the argument for the user in help text
+   */
+  const char *argumentHelp;
+
+  /**
+   * Help text for the option (description)
+   */
+  const char *description;
+
+  /**
+   * Is an argument required?  0: MONKEY_NO (includes optional), 1: MONKEY_YES.
+   */
+  int require_argument;
+
+  /**
+   * Handler for the option.
+   */
+  MONKEY_GETOPT_CommandLineOptionProcessor processor;
+
+  /**
+   * Specific closure to pass to the processor.
+   */
+  void *scls;
+
+};
+
+/**
+ * Macro defining the option to print the command line
+ * help text (-h option).
+ *
+ * @param about string with brief description of the application
+ */
+#define MONKEY_GETOPT_OPTION_HELP(about) \
+  { 'h', "help", (const char *) NULL, gettext_noop("print this help"), 0, 
&MONKEY_GETOPT_format_help_, (void *) about }
+
+
+/**
+ * Macro defining the option to print the version of
+ * the application (-v option)
+ *
+ * @param version string with the version number
+ */
+#define MONKEY_GETOPT_OPTION_VERSION(version) \
+  { 'v', "version", (const char *) NULL, gettext_noop("print the version 
number"), 0, &MONKEY_GETOPT_print_version_, (void *) version }
+
+
+/**
+ * Allow user to specify log file name (-l option)
+ *
+ * @param logfn set to the name of the logfile
+ */
+#define MONKEY_GETOPT_OPTION_LOGFILE(logfn)                            \
+  { 'l', "logfile", "LOGFILE", gettext_noop("configure logging to write logs 
to LOGFILE"), 1, &MONKEY_GETOPT_set_string, (void *) logfn }
+
+
+/**
+ * Allow user to specify log level (-L option)
+ *
+ * @param loglev set to the log level
+ */
+#define MONKEY_GETOPT_OPTION_LOGLEVEL(loglev)                          \
+  { 'L', "log", "LOGLEVEL", gettext_noop("configure logging to use LOGLEVEL"), 
1, &MONKEY_GETOPT_set_string, (void *) loglev }
+
+
+/**
+ * Get number of verbose (-V) flags
+ *
+ * @param level where to store the verbosity level (should be an 'int')
+ */
+#define MONKEY_GETOPT_OPTION_VERBOSE(level)                            \
+  { 'V', "verbose", (const char *) NULL, gettext_noop("be verbose"), 0, 
&MONKEY_GETOPT_increment_value, (void *) level }
+
+
+/**
+ * Get configuration file name (-c option)
+ *
+ * @param fn set to the configuration file name
+ */
+#define MONKEY_GETOPT_OPTION_CFG_FILE(fn)                              \
+  { 'c', "config", "FILENAME", gettext_noop("use configuration file 
FILENAME"), 1, &MONKEY_GETOPT_set_string, (void *) fn }
+
+
+/**
+ * Marker for the end of the list of options.
+ */
+#define MONKEY_GETOPT_OPTION_END \
+  { '\0', NULL, NULL, NULL, 0, NULL, NULL }
+
+
+/**
+ * Parse the command line.
+ *
+ * @param binaryOptions Name of application with option summary
+ * @param allOptions defined options and handlers
+ * @param argc number of arguments
+ * @param argv actual arguments
+ * @return index into argv with first non-option
+ *   argument, or MONKEY_SYSERR on error
+ */
+int
+MONKEY_GETOPT_run (const char *binaryOptions,
+                   const struct MONKEY_GETOPT_CommandLineOption *allOptions,
+                   unsigned int argc, char *const *argv);
+
+
+/**
+ * Set an option of type 'unsigned long long' from the command line.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'unsigned long long'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'unsigned long long')
+ * @param option name of the option
+ * @param value actual value of the option as a string.
+ * @return MONKEY_OK if parsing the value worked
+ */
+int
+MONKEY_GETOPT_set_ulong (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
+                         void *scls, const char *option, const char *value);
+
+
+/**
+ * Set an option of type 'struct MONKEY_TIME_Relative' from the command line.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'struct MONKEY_TIME_Relative'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'struct 
MONKEY_TIME_Relative')
+ * @param option name of the option
+ * @param value actual value of the option as a string.
+ * @return MONKEY_OK if parsing the value worked
+ */
+int
+MONKEY_GETOPT_set_relative_time (struct 
MONKEY_GETOPT_CommandLineProcessorContext *ctx,
+                                void *scls, const char *option, const char 
*value);
+
+
+/**
+ * Set an option of type 'unsigned int' from the command line.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'unsigned int'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'unsigned int')
+ * @param option name of the option
+ * @param value actual value of the option as a string.
+ * @return MONKEY_OK if parsing the value worked
+ */
+int
+MONKEY_GETOPT_set_uint (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
+                        void *scls, const char *option, const char *value);
+
+
+/**
+ * Set an option of type 'int' from the command line to 1 if the
+ * given option is present.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'int'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'int')
+ * @param option name of the option
+ * @param value not used (NULL)
+ * @return MONKEY_OK
+ */
+int
+MONKEY_GETOPT_set_one (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
+                       void *scls, const char *option, const char *value);
+
+
+/**
+ * Set an option of type 'char *' from the command line.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'char *'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'char *',
+ *             which will be allocated)
+ * @param option name of the option
+ * @param value actual value of the option (a string)
+ * @return MONKEY_OK
+ */
+int
+MONKEY_GETOPT_set_string (struct MONKEY_GETOPT_CommandLineProcessorContext 
*ctx,
+                          void *scls, const char *option, const char *value);
+
+/**
+ * Set an option of type 'unsigned int' from the command line. Each
+ * time the option flag is given, the value is incremented by one.
+ * A pointer to this function should be passed as part of the
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
+ * of this type.  It should be followed by a pointer to a value of
+ * type 'int'.
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (will point to the 'int')
+ * @param option name of the option
+ * @param value not used (NULL)
+ * @return MONKEY_OK
+ */
+int
+MONKEY_GETOPT_increment_value (struct MONKEY_GETOPT_CommandLineProcessorContext
+                               *ctx, void *scls, const char *option,
+                               const char *value);
+
+
+/* *************** internal prototypes - use macros above! ************* */
+
+/**
+ * Print out details on command line options (implements --help).
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (points to about text)
+ * @param option name of the option
+ * @param value not used (NULL)
+ * @return MONKEY_SYSERR (do not continue)
+ */
+int
+MONKEY_GETOPT_format_help_ (struct MONKEY_GETOPT_CommandLineProcessorContext
+                            *ctx, void *scls, const char *option,
+                            const char *value);
+
+/**
+ * Print out program version (implements --version).
+ *
+ * @param ctx command line processing context
+ * @param scls additional closure (points to version string)
+ * @param option name of the option
+ * @param value not used (NULL)
+ * @return MONKEY_SYSERR (do not continue)
+ */
+int
+MONKEY_GETOPT_print_version_ (struct MONKEY_GETOPT_CommandLineProcessorContext
+                              *ctx, void *scls, const char *option,
+                              const char *value);
+
+#if 0                           /* keep Emacsens' auto-indent happy */
+{
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+
+/* ifndef MONKEY_GETOPT_LIB_H */
+#endif
+/* end of gnunet_getopt_lib.h */

Modified: monkey/trunk/pathologist/src/pathologist/getopt.c
===================================================================
--- monkey/trunk/pathologist/src/pathologist/getopt.c   2012-09-26 14:46:32 UTC 
(rev 24019)
+++ monkey/trunk/pathologist/src/pathologist/getopt.c   2012-09-26 14:50:41 UTC 
(rev 24020)
@@ -39,8 +39,8 @@
  */
 
 #include "platform.h"
-#include "gnunet_common.h"
-#include "gnunet_getopt_lib.h"
+#include "monkey_common.h"
+#include "monkey_getopt_lib.h"
 
 #ifdef VMS
 #include <unixlib.h>
@@ -49,9 +49,9 @@
 #endif
 #endif
 
-#define LOG(kind,...) GNUNET_log_from (kind, "util", __VA_ARGS__)
+#define LOG(kind,...) MONKEY_log_from (kind, "util", __VA_ARGS__)
 
-#define LOG_STRERROR(kind,syscall) GNUNET_log_from_strerror (kind, "util", 
syscall)
+#define LOG_STRERROR(kind,syscall) MONKEY_log_from_strerror (kind, "util", 
syscall)
 
 #if defined (WIN32) && !defined (__CYGWIN32__)
 /* It's not Unix, really.  See?  Capital letters.  */
@@ -162,7 +162,7 @@
    variable POSIXLY_CORRECT, or using `+' as the first character
    of the list of option characters.
 
-   PERMUTE is the default.  We GNUNET_CRYPTO_random_permute the contents of 
ARGV as we scan,
+   PERMUTE is the default.  We MONKEY_CRYPTO_random_permute the contents of 
ARGV as we scan,
    so that eventually all the non-options are at the end.  This allows options
    to be given in any order, even with programs that were not written to
    expect this.
@@ -256,7 +256,7 @@
 /* Make sure the environment variable bash 2.0 puts in the environment
    is valid for the getopt call we must make sure that the ARGV passed
    to getopt is that one passed to the process.  */
-static void GNUNET_UNUSED
+static void MONKEY_UNUSED
 store_args_and_env (int argc, char *const *argv)
 {
   /* XXX This is no good solution.  We should rather copy the args so
@@ -487,7 +487,7 @@
    `flag' field is nonzero, the value of the option's `val' field
    if the `flag' field is zero.
 
-   The elements of ARGV aren't really const, because we 
GNUNET_CRYPTO_random_permute them.
+   The elements of ARGV aren't really const, because we 
MONKEY_CRYPTO_random_permute them.
    But we pretend they're const in the prototype to be compatible
    with other systems.
 
@@ -967,12 +967,12 @@
  *   argument, or -1 on error
  */
 int
-GNUNET_GETOPT_run (const char *binaryOptions,
-                   const struct GNUNET_GETOPT_CommandLineOption *allOptions,
+MONKEY_GETOPT_run (const char *binaryOptions,
+                   const struct MONKEY_GETOPT_CommandLineOption *allOptions,
                    unsigned int argc, char *const *argv)
 {
   struct GNoption *long_options;
-  struct GNUNET_GETOPT_CommandLineProcessorContext clpc;
+  struct MONKEY_GETOPT_CommandLineProcessorContext clpc;
   int count;
   int i;
   char *shorts;
@@ -980,7 +980,7 @@
   int cont;
   int c;
 
-//  GNUNET_assert (argc > 0);
+//  MONKEY_assert (argc > 0);
   GNoptind = 0;
   clpc.binaryName = argv[0];
   clpc.binaryOptions = binaryOptions;
@@ -1008,15 +1008,15 @@
   long_options[count].flag = NULL;
   long_options[count].val = '\0';
   shorts[spos] = '\0';
-  cont = GNUNET_OK;
+  cont = MONKEY_OK;
   /* main getopt loop */
-  while (cont == GNUNET_OK)
+  while (cont == MONKEY_OK)
   {
     int option_index = 0;
 
     c = GNgetopt_long (argc, argv, shorts, long_options, &option_index);
 
-    if (c == GNUNET_SYSERR)
+    if (c == MONKEY_SYSERR)
       break;                    /* No more flags to process */
 
     for (i = 0; i < count; i++)
@@ -1033,14 +1033,14 @@
     if (i == count)
     {
       FPRINTF (stderr, _("Use %s to get a list of options.\n"), "--help");
-      cont = GNUNET_SYSERR;
+      cont = MONKEY_SYSERR;
     }
   }
 
   free (shorts);
   free (long_options);
-  if (cont == GNUNET_SYSERR)
-    return GNUNET_SYSERR;
+  if (cont == MONKEY_SYSERR)
+    return MONKEY_SYSERR;
   return GNoptind;
 }
 

Modified: monkey/trunk/pathologist/src/pathologist/getopt_helpers.c
===================================================================
--- monkey/trunk/pathologist/src/pathologist/getopt_helpers.c   2012-09-26 
14:46:32 UTC (rev 24019)
+++ monkey/trunk/pathologist/src/pathologist/getopt_helpers.c   2012-09-26 
14:50:41 UTC (rev 24020)
@@ -26,10 +26,10 @@
 
 #include <string.h>
 #include "platform.h"
-#include "gnunet_common.h"
-#include "gnunet_getopt_lib.h"
+#include "monkey_common.h"
+#include "monkey_getopt_lib.h"
 
-#define LOG(kind,...) GNUNET_log_from (kind, "util", __VA_ARGS__)
+#define LOG(kind,...) MONKEY_log_from (kind, "util", __VA_ARGS__)
 
 
 /**
@@ -39,17 +39,17 @@
  * @param scls additional closure (points to version string)
  * @param option name of the option
  * @param value not used (NULL)
- * @return GNUNET_SYSERR (do not continue)
+ * @return MONKEY_SYSERR (do not continue)
  */
 int
-GNUNET_GETOPT_print_version_ (struct GNUNET_GETOPT_CommandLineProcessorContext
+MONKEY_GETOPT_print_version_ (struct MONKEY_GETOPT_CommandLineProcessorContext
                               *ctx, void *scls, const char *option,
                               const char *value)
 {
   const char *version = scls;
 
   printf ("%s v%s\n", ctx->binaryName, version);
-  return GNUNET_SYSERR;
+  return MONKEY_SYSERR;
 }
 
 
@@ -63,10 +63,10 @@
  * @param scls additional closure (points to about text)
  * @param option name of the option
  * @param value not used (NULL)
- * @return GNUNET_SYSERR (do not continue)
+ * @return MONKEY_SYSERR (do not continue)
  */
 int
-GNUNET_GETOPT_format_help_ (struct GNUNET_GETOPT_CommandLineProcessorContext
+MONKEY_GETOPT_format_help_ (struct MONKEY_GETOPT_CommandLineProcessorContext
                             *ctx, void *scls, const char *option,
                             const char *value)
 {
@@ -78,7 +78,7 @@
   size_t p;
   char *scp;
   const char *trans;
-  const struct GNUNET_GETOPT_CommandLineOption *opt;
+  const struct MONKEY_GETOPT_CommandLineOption *opt;
 
   if (NULL != about)
   {
@@ -152,7 +152,7 @@
   printf ("Report bugs to address@hidden"
           "GNUnet home page: http://www.gnu.org/software/gnunet/\n";
           "General help using GNU software: http://www.gnu.org/gethelp/\n";);
-  return GNUNET_SYSERR;
+  return MONKEY_SYSERR;
 }
 
 
@@ -160,7 +160,7 @@
  * Set an option of type 'unsigned int' from the command line. Each
  * time the option flag is given, the value is incremented by one.
  * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
  * of this type.  It should be followed by a pointer to a value of
  * type 'int'.
  *
@@ -168,17 +168,17 @@
  * @param scls additional closure (will point to the 'int')
  * @param option name of the option
  * @param value not used (NULL)
- * @return GNUNET_OK
+ * @return MONKEY_OK
  */
 int
-GNUNET_GETOPT_increment_value (struct GNUNET_GETOPT_CommandLineProcessorContext
+MONKEY_GETOPT_increment_value (struct MONKEY_GETOPT_CommandLineProcessorContext
                                *ctx, void *scls, const char *option,
                                const char *value)
 {
   int *val = scls;
 
   (*val)++;
-  return GNUNET_OK;
+  return MONKEY_OK;
 }
 
 
@@ -186,7 +186,7 @@
  * Set an option of type 'int' from the command line to 1 if the
  * given option is present.
  * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
  * of this type.  It should be followed by a pointer to a value of
  * type 'int'.
  *
@@ -194,23 +194,23 @@
  * @param scls additional closure (will point to the 'int')
  * @param option name of the option
  * @param value not used (NULL)
- * @return GNUNET_OK
+ * @return MONKEY_OK
  */
 int
-GNUNET_GETOPT_set_one (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
+MONKEY_GETOPT_set_one (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
                        void *scls, const char *option, const char *value)
 {
   int *val = scls;
 
   *val = 1;
-  return GNUNET_OK;
+  return MONKEY_OK;
 }
 
 
 /**
  * Set an option of type 'char *' from the command line.
  * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
  * of this type.  It should be followed by a pointer to a value of
  * type 'char *'.
  *
@@ -219,26 +219,26 @@
  *             which will be allocated)
  * @param option name of the option
  * @param value actual value of the option (a string)
- * @return GNUNET_OK
+ * @return MONKEY_OK
  */
 int
-GNUNET_GETOPT_set_string (struct GNUNET_GETOPT_CommandLineProcessorContext 
*ctx,
+MONKEY_GETOPT_set_string (struct MONKEY_GETOPT_CommandLineProcessorContext 
*ctx,
                           void *scls, const char *option, const char *value)
 {
   char **val = scls;
 
-//  GNUNET_assert (value != NULL);
-//  GNUNET_free_non_null (*val);
+//  MONKEY_assert (value != NULL);
+//  MONKEY_free_non_null (*val);
   if(*val != NULL) free(*val);
   *val = strdup (value);
-  return GNUNET_OK;
+  return MONKEY_OK;
 }
 
 
 /**
  * Set an option of type 'unsigned long long' from the command line.
  * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
  * of this type.  It should be followed by a pointer to a value of
  * type 'unsigned long long'.
  *
@@ -246,10 +246,10 @@
  * @param scls additional closure (will point to the 'unsigned long long')
  * @param option name of the option
  * @param value actual value of the option as a string.
- * @return GNUNET_OK if parsing the value worked
+ * @return MONKEY_OK if parsing the value worked
  */
 int
-GNUNET_GETOPT_set_ulong (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
+MONKEY_GETOPT_set_ulong (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
                          void *scls, const char *option, const char *value)
 {
   unsigned long long *val = scls;
@@ -257,16 +257,16 @@
   if (1 != SSCANF (value, "%llu", val))
   {
     FPRINTF (stderr, "You must pass a number to the `%s' option.\n", option);
-    return GNUNET_SYSERR;
+    return MONKEY_SYSERR;
   }
-  return GNUNET_OK;
+  return MONKEY_OK;
 }
 
 
 /**
  * Set an option of type 'unsigned int' from the command line.
  * A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * 'struct MONKEY_GETOPT_CommandLineOption' array to initialize options
  * of this type.  It should be followed by a pointer to a value of
  * type 'unsigned int'.
  *
@@ -274,10 +274,10 @@
  * @param scls additional closure (will point to the 'unsigned int')
  * @param option name of the option
  * @param value actual value of the option as a string.
- * @return GNUNET_OK if parsing the value worked
+ * @return MONKEY_OK if parsing the value worked
  */
 int
-GNUNET_GETOPT_set_uint (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx,
+MONKEY_GETOPT_set_uint (struct MONKEY_GETOPT_CommandLineProcessorContext *ctx,
                         void *scls, const char *option, const char *value)
 {
   unsigned int *val = scls;
@@ -285,9 +285,9 @@
   if (1 != SSCANF (value, "%u", val))
   {
     FPRINTF (stderr, "You must pass a number to the `%s' option.\n", option);
-    return GNUNET_SYSERR;
+    return MONKEY_SYSERR;
   }
-  return GNUNET_OK;
+  return MONKEY_OK;
 }
 
 

Modified: monkey/trunk/pathologist/src/pathologist/pathologist.c
===================================================================
--- monkey/trunk/pathologist/src/pathologist/pathologist.c      2012-09-26 
14:46:32 UTC (rev 24019)
+++ monkey/trunk/pathologist/src/pathologist/pathologist.c      2012-09-26 
14:50:41 UTC (rev 24020)
@@ -29,7 +29,7 @@
 #include <sys/stat.h>
 #include "monkey_common.h"
 #include "pathologist_action.h"
-#include "gnunet_getopt_lib.h"
+#include "monkey_getopt_lib.h"
 
 #define MIN_ARG_REQUIRED 2
 
@@ -326,42 +326,42 @@
 int
 main (int argc, char *argv[])
 {
-       static const struct GNUNET_GETOPT_CommandLineOption options[] = {
+       static const struct MONKEY_GETOPT_CommandLineOption options[] = {
                {'b', "binary", "FILENAME", "the binary to debug",
-                       1, &GNUNET_GETOPT_set_string, &binaryName},
+                       1, &MONKEY_GETOPT_set_string, &binaryName},
                {'d', "database", "FILENAME", "the expression database to use, 
generated by seaspider",
-                       1, &GNUNET_GETOPT_set_string, &edbFilePath},
+                       1, &MONKEY_GETOPT_set_string, &edbFilePath},
                {'f', "function", "FUNCTIONNAME", "the name of the function, in 
which pathologist will set a breakpoint",
-                       1, &GNUNET_GETOPT_set_string, &inspectFunction},
+                       1, &MONKEY_GETOPT_set_string, &inspectFunction},
                {'i', "inspect", "EXPRESSIONNAME", "expression to inspect in 
the function specified after argument f",
-                       1, &GNUNET_GETOPT_set_string, &inspectExpression},
+                       1, &MONKEY_GETOPT_set_string, &inspectExpression},
                {'m', "mail", "MAILADDRESS", "if specified, pathologist will 
send the bugreport to the given address",
-                       1, &GNUNET_GETOPT_set_string, &emailAddress},
+                       1, &MONKEY_GETOPT_set_string, &emailAddress},
                {'o', "report", "FILENAME", "saves the xml formated report to 
the given file",
-                       1, &GNUNET_GETOPT_set_string, &dumpFileName},
+                       1, &MONKEY_GETOPT_set_string, &dumpFileName},
                {'p', "depth", "UINT", "scope depth. How many scopes should 
pathologist lookup expression values outer than the scope in which the problem 
occurs. Default is 0 which means, pathologist is restricted to the scope of the 
expression in which the debugged program stopped" ,
-                       1, &GNUNET_GETOPT_set_uint, &scopeDepth},
+                       1, &MONKEY_GETOPT_set_uint, &scopeDepth},
                {'r', "reverse", NULL, "enables reverse execution",
-                       0, &GNUNET_GETOPT_set_one, &reverseExecutionAllowed},
+                       0, &MONKEY_GETOPT_set_one, &reverseExecutionAllowed},
                {'g', "gdb", "FILENAME", "path to gdb binary to use. If not 
passed, pathologist will set it to /usr/bin/gdb",
-                       1, &GNUNET_GETOPT_set_string, &gdbBinaryPath},
+                       1, &MONKEY_GETOPT_set_string, &gdbBinaryPath},
                {'l', "valgrind", "FILENAME", "path to valgrind binary. If not 
passed, pathologist will set it to /usr/bin/valgrind",
-                       1, &GNUNET_GETOPT_set_string, &valgrindBinaryPath},
+                       1, &MONKEY_GETOPT_set_string, &valgrindBinaryPath},
                {'h', "help", NULL, "shows this help",
-                       0, &GNUNET_GETOPT_format_help_, "Monkey Pathologist: 
Automatically debug a service"},
+                       0, &MONKEY_GETOPT_format_help_, "Monkey Pathologist: 
Automatically debug a service"},
                {'v', "version", NULL, "print the version number",
-                       0, &GNUNET_GETOPT_print_version_, "0.1 alpha"},
-               GNUNET_GETOPT_OPTION_END
+                       0, &MONKEY_GETOPT_print_version_, "0.1 alpha"},
+               MONKEY_GETOPT_OPTION_END
        };
 
-       if (-1 == (ret = GNUNET_GETOPT_run ("pathologist", options, (unsigned 
int) argc, argv)))
+       if (-1 == (ret = MONKEY_GETOPT_run ("pathologist", options, (unsigned 
int) argc, argv)))
                return -1;
 
        
        checkRequiredArgs(); 
 
        /* All remaining args are considered program arguments */
-       binaryArgs = buildBinaryArgs(argc - ret, &argv[ret]);
+       binaryArgs = (char *)buildBinaryArgs(argc - ret, &argv[ret]);
 
        /* Run Pathologist */
        run();




reply via email to

[Prev in Thread] Current Thread [Next in Thread]