diff options
author | Christof Schmitt <cs@samba.org> | 2015-02-24 16:18:59 -0700 |
---|---|---|
committer | Christof Schmitt <cs@samba.org> | 2015-03-23 21:22:12 +0100 |
commit | b818e09c022589b073595f72b573cf93d3d197a4 (patch) | |
tree | 519260db0efe0353cbf4ae43f57ea49bf8a65beb /lib | |
parent | 8dcf8cfe66e5d94f62f07b1710210236c01a8f97 (diff) | |
download | samba-b818e09c022589b073595f72b573cf93d3d197a4.tar.gz |
gpfswrap: Add wrappers for tracing API
Signed-off-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/util/gpfswrap.c | 46 | ||||
-rw-r--r-- | lib/util/gpfswrap.h | 4 |
2 files changed, 50 insertions, 0 deletions
diff --git a/lib/util/gpfswrap.c b/lib/util/gpfswrap.c index aac2f44405d..732fcb69744 100644 --- a/lib/util/gpfswrap.c +++ b/lib/util/gpfswrap.c @@ -40,6 +40,10 @@ static int (*gpfs_set_times_path_fn)(char *pathname, int flags, static int (*gpfs_quotactl_fn)(char *pathname, int cmd, int id, void *bufp); static int (*gpfs_fcntl_fn)(int fd, void *argp); static int (*gpfs_getfilesetid_fn)(char *pathname, char *name, int *idp); +static int (*gpfs_init_trace_fn)(void); +static int (*gpfs_query_trace_fn)(void); +static void (*gpfs_add_trace_fn)(int level, const char *msg); +static void (*gpfs_fini_trace_fn)(void); int gpfswrap_init(void) { @@ -69,6 +73,10 @@ int gpfswrap_init(void) gpfs_quotactl_fn = dlsym(l, "gpfs_quotactl"); gpfs_fcntl_fn = dlsym(l, "gpfs_fcntl"); gpfs_getfilesetid_fn = dlsym(l, "gpfs_getfilesetid"); + gpfs_init_trace_fn = dlsym(l, "gpfs_init_trace"); + gpfs_query_trace_fn = dlsym(l, "gpfs_query_trace"); + gpfs_add_trace_fn = dlsym(l, "gpfs_add_trace"); + gpfs_fini_trace_fn = dlsym(l, "gpfs_fini_trace"); return 0; } @@ -224,3 +232,41 @@ int gpfswrap_getfilesetid(char *pathname, char *name, int *idp) return gpfs_getfilesetid_fn(pathname, name, idp); } + +int gpfswrap_init_trace(void) +{ + if (gpfs_init_trace_fn == NULL) { + errno = ENOSYS; + return -1; + } + + return gpfs_init_trace_fn(); +} + +int gpfswrap_query_trace(void) +{ + if (gpfs_query_trace_fn == NULL) { + errno = ENOSYS; + return -1; + } + + return gpfs_query_trace_fn(); +} + +void gpfswrap_add_trace(int level, const char *msg) +{ + if (gpfs_add_trace_fn == NULL) { + return; + } + + gpfs_add_trace_fn(level, msg); +} + +void gpfswrap_fini_trace(void) +{ + if (gpfs_fini_trace_fn == NULL) { + return; + } + + gpfs_fini_trace_fn(); +} diff --git a/lib/util/gpfswrap.h b/lib/util/gpfswrap.h index d30b05f4221..fc8ac4ac4c1 100644 --- a/lib/util/gpfswrap.h +++ b/lib/util/gpfswrap.h @@ -44,5 +44,9 @@ int gpfswrap_set_times_path(char *pathname, int flags, int gpfswrap_quotactl(char *pathname, int cmd, int id, void *bufp); int gpfswrap_fcntl(int fd, void *argp); int gpfswrap_getfilesetid(char *pathname, char *name, int *idp); +int gpfswrap_init_trace(void); +int gpfswrap_query_trace(void); +void gpfswrap_add_trace(int level, const char *msg); +void gpfswrap_fini_trace(void); #endif |