Hide internal tracepoint and providers data symbols
[lttng-ust.git] / src / lib / lttng-ust / tracef.c
CommitLineData
641c659a 1/*
c0c0989a 2 * SPDX-License-Identifier: MIT
641c659a 3 *
c0c0989a 4 * Copyright (C) 2013-2014 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
641c659a
MD
5 */
6
641c659a
MD
7#define _LGPL_SOURCE
8#include <stdio.h>
9d315d6d 9#include "common/macros.h"
641c659a 10
6ba0c2b2
MD
11/* The tracepoint definition is public, but the provider definition is hidden. */
12#define LTTNG_UST_TRACEPOINT_PROVIDER_HIDDEN_DEFINITION
13
660323e6 14#define LTTNG_UST_TRACEPOINT_CREATE_PROBES
88c7c4ea 15#define LTTNG_UST_TRACEPOINT_DEFINE
641c659a
MD
16#include "lttng-ust-tracef-provider.h"
17
4199ddc7 18static inline
06294ff9 19void lttng_ust___vtracef(const char *fmt, va_list ap)
4199ddc7
MJ
20 __attribute__((always_inline, format(printf, 1, 0)));
21static inline
06294ff9 22void lttng_ust___vtracef(const char *fmt, va_list ap)
641c659a 23{
641c659a 24 char *msg;
cfd56ee1 25 const int len = vasprintf(&msg, fmt, ap);
641c659a 26
641c659a
MD
27 /* len does not include the final \0 */
28 if (len < 0)
29 goto end;
0274f7f2 30 lttng_ust_tracepoint_cb_lttng_ust_tracef___event(msg, len,
171fcc6f 31 LTTNG_UST_CALLER_IP());
641c659a
MD
32 free(msg);
33end:
cfd56ee1
MRB
34 return;
35}
36
06294ff9 37void lttng_ust__vtracef(const char *fmt, va_list ap)
4199ddc7 38 __attribute__((format(printf, 1, 0)));
06294ff9 39void lttng_ust__vtracef(const char *fmt, va_list ap)
cfd56ee1 40{
06294ff9 41 lttng_ust___vtracef(fmt, ap);
cfd56ee1
MRB
42}
43
06294ff9 44void lttng_ust__tracef(const char *fmt, ...)
4199ddc7 45 __attribute__((format(printf, 1, 2)));
06294ff9 46void lttng_ust__tracef(const char *fmt, ...)
cfd56ee1
MRB
47{
48 va_list ap;
49
50 va_start(ap, fmt);
06294ff9 51 lttng_ust___vtracef(fmt, ap);
641c659a
MD
52 va_end(ap);
53}
This page took 0.032688 seconds and 4 git commands to generate.