Merge in code changes for all of the new parser.
[awesomized/libmemcached] / clients / utilities.h
1 /* LibMemcached
2 * Copyright (C) 2006-2009 Brian Aker
3 * All rights reserved.
4 *
5 * Use and distribution licensed under the BSD license. See
6 * the COPYING file in the parent directory for full text.
7 *
8 * Summary:
9 *
10 */
11
12 #include <getopt.h>
13 #include <libmemcached/memcached.h>
14 #include "libmemcached/watchpoint.h"
15 #include "client_options.h"
16
17 #if TIME_WITH_SYS_TIME
18 # include <sys/time.h>
19 # include <time.h>
20 #else
21 # if HAVE_SYS_TIME_H
22 # include <sys/time.h>
23 # else
24 # include <time.h>
25 # endif
26 #endif
27
28 #ifdef __sun
29 /* For some odd reason the option struct on solaris defines the argument
30 * as char* and not const char*
31 */
32 #define OPTIONSTRING char*
33 #else
34 #define OPTIONSTRING const char*
35 #endif
36
37 typedef struct memcached_programs_help_st memcached_programs_help_st;
38
39 struct memcached_programs_help_st
40 {
41 char *not_used_yet;
42 };
43
44 char *strdup_cleanup(const char *str);
45 void cleanup(void);
46 long int timedif(struct timeval a, struct timeval b);
47 void version_command(const char *command_name);
48 void help_command(const char *command_name, const char *description,
49 const struct option *long_options,
50 memcached_programs_help_st *options);
51 void process_hash_option(memcached_st *memc, char *opt_hash);
52 bool initialize_sasl(memcached_st *memc, char *user, char *password);
53 void shutdown_sasl(void);
54 void initialize_sockets(void);