Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
**/vendor
!/ext/vendor
!/tracer/vendor
tmp/
composer.lock*
**/core*
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ RUN_TESTS_IS_PARALLEL ?= $(shell test $(PHP_MAJOR_MINOR) -ge 74 && echo 1)
# shuffle parallel tests to evenly distribute test load, avoiding a batch of 32 tests being request-replayer tests
RUN_TESTS_CMD := DD_SERVICE= DD_ENV= REPORT_EXIT_STATUS=1 TEST_PHP_SRCDIR=$(PROJECT_ROOT) USE_TRACKED_ALLOC=1 php -n -d 'memory_limit=-1' $(BUILD_DIR)/run-tests.php $(if $(QUIET_TESTS),,-g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP) $(if $(ASAN), --asan) --show-diff -n -p $(shell which php) -q $(if $(RUN_TESTS_IS_PARALLEL), --shuffle -j$(MAX_TEST_PARALLELISM))

C_FILES = $(shell find components components-rs ext src/dogstatsd zend_abstract_interface -name '*.c' -o -name '*.h' | awk '{ printf "$(BUILD_DIR)/%s\n", $$1 }' )
C_FILES = $(shell find components components-rs ext src/dogstatsd tracer zend_abstract_interface -name '*.c' -o -name '*.h' | awk '{ printf "$(BUILD_DIR)/%s\n", $$1 }' )
TEST_FILES = $(shell find tests/ext -name '*.php*' -o -name '*.inc' -o -name '*.json' -o -name '*.yaml' -o -name 'CONFLICTS' | awk '{ printf "$(BUILD_DIR)/%s\n", $$1 }' )
RUST_FILES = $(BUILD_DIR)/Cargo.toml $(BUILD_DIR)/Cargo.lock $(shell find components-rs -name '*.c' -o -name '*.rs' -o -name 'Cargo.toml' | awk '{ printf "$(BUILD_DIR)/%s\n", $$1 }' ) $(shell find libdatadog/{build-common,datadog-ffe,datadog-ipc,datadog-ipc-macros,datadog-live-debugger,datadog-live-debugger-ffi,datadog-remote-config,datadog-sidecar,datadog-sidecar-ffi,datadog-sidecar-macros,libdd-alloc,libdd-capabilities,libdd-capabilities-impl,libdd-common,libdd-common-ffi,libdd-crashtracker,libdd-crashtracker-ffi,libdd-data-pipeline,libdd-ddsketch,libdd-dogstatsd-client,libdd-library-config,libdd-library-config-ffi,libdd-log,libdd-shared-runtime,libdd-telemetry,libdd-telemetry-ffi,libdd-tinybytes,libdd-trace-*,spawn_worker,tools/{cc_utils,sidecar_mockgen},libdd-trace-*,Cargo.toml} \( -type l -o -type f \) \( -path "*/src*" -o -path "*/examples*" -o -path "*Cargo.toml" -o -path "*/build.rs" -o -path "*/tests/dataservice.rs" -o -path "*/tests/service_functional.rs" \) -not -path "*/datadog-ipc/build.rs" -not -path "*/datadog-sidecar-ffi/build.rs")
ALL_OBJECT_FILES = $(C_FILES) $(RUST_FILES) $(BUILD_DIR)/Makefile
Expand Down
1 change: 0 additions & 1 deletion appsec/cmake/ddtrace.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@ file(GLOB_RECURSE FILES_DDTRACE

list(APPEND FILES_DDTRACE
"${CMAKE_SOURCE_DIR}/../src/dogstatsd/client.c"
"${CMAKE_SOURCE_DIR}/../components/container_id/container_id.c"
"${CMAKE_SOURCE_DIR}/../components/log/log.c"
"${CMAKE_SOURCE_DIR}/../components/sapi/sapi.c"
"${CMAKE_SOURCE_DIR}/../components/string_view/string_view.c"
Expand Down
52 changes: 26 additions & 26 deletions appsec/src/extension/ddtrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
#include "string_helpers.h"
#include <Zend/zend_extensions.h>

void (*nullable ddtrace_metric_register_buffer)(
void (*nullable datadog_metric_register_buffer)(
zend_string *nonnull name, ddtrace_metric_type type, ddtrace_metric_ns ns);
bool (*nullable ddtrace_metric_add_point)(
bool (*nullable datadog_metric_add_point)(
zend_string *nonnull name, double value, zend_string *nonnull tags);

static int (*_orig_ddtrace_shutdown)(SHUTDOWN_FUNC_ARGS);
Expand All @@ -40,8 +40,8 @@ static zend_module_entry *_find_ddtrace_module(void);
static int _ddtrace_rshutdown_testing(SHUTDOWN_FUNC_ARGS);
static void _register_testing_objects(void);

static const uint8_t *(*nullable _ddtrace_get_formatted_session_id)(void);
static uint64_t (*nullable _ddtrace_get_sidecar_queue_id)(void);
static const uint8_t *(*nullable _datadog_get_formatted_session_id)(void);
static uint64_t (*nullable _datadog_get_sidecar_queue_id)(void);
static zend_object *(*nullable _ddtrace_get_root_span)(void);
static void (*nullable _ddtrace_close_all_spans_and_flush)(void);
static void (*nullable _ddtrace_set_priority_sampling_on_span_zobj)(
Expand All @@ -57,14 +57,14 @@ static bool (*nullable _ddtrace_user_req_add_listeners)(

static zend_string *(*_ddtrace_ip_extraction_find)(zval *server);

static struct telemetry_rc_info (*_ddtrace_get_telemetry_rc_info)(void);
static struct telemetry_rc_info (*_datadog_get_telemetry_rc_info)(void);
static void *(*nullable _ddtrace_emit_asm_event)(void);
static zend_string *(*nullable _ddtrace_guess_endpoint_from_url)(
const char *nonnull url, size_t url_len);

static void _test_ddtrace_metric_register_buffer(
static void _test_datadog_metric_register_buffer(
zend_string *nonnull name, ddtrace_metric_type type, ddtrace_metric_ns ns);
static bool _test_ddtrace_metric_add_point(
static bool _test_datadog_metric_add_point(
zend_string *nonnull name, double value, zend_string *nonnull tags);

static void dd_trace_load_symbols(zend_module_entry *module)
Expand All @@ -91,8 +91,8 @@ static void dd_trace_load_symbols(zend_module_entry *module)
ASSIGN_DLSYM(_ddtrace_get_root_span, "ddtrace_get_root_span");
ASSIGN_DLSYM(_ddtrace_runtime_id, "ddtrace_runtime_id");
ASSIGN_DLSYM(
_ddtrace_get_formatted_session_id, "ddtrace_get_formatted_session_id");
ASSIGN_DLSYM(_ddtrace_get_sidecar_queue_id, "ddtrace_get_sidecar_queue_id");
_datadog_get_formatted_session_id, "datadog_get_formatted_session_id");
ASSIGN_DLSYM(_datadog_get_sidecar_queue_id, "datadog_get_sidecar_queue_id");
ASSIGN_DLSYM(_ddtrace_set_priority_sampling_on_span_zobj,
"ddtrace_set_priority_sampling_on_span_zobj");
ASSIGN_DLSYM(_ddtrace_get_priority_sampling_on_span_zobj,
Expand All @@ -103,10 +103,10 @@ static void dd_trace_load_symbols(zend_module_entry *module)
_ddtrace_user_req_add_listeners, "ddtrace_user_req_add_listeners");
ASSIGN_DLSYM(_ddtrace_ip_extraction_find, "ddtrace_ip_extraction_find");
ASSIGN_DLSYM(
_ddtrace_get_telemetry_rc_info, "ddtrace_get_telemetry_rc_info");
_datadog_get_telemetry_rc_info, "datadog_get_telemetry_rc_info");
ASSIGN_DLSYM(
ddtrace_metric_register_buffer, "ddtrace_metric_register_buffer");
ASSIGN_DLSYM(ddtrace_metric_add_point, "ddtrace_metric_add_point");
datadog_metric_register_buffer, "datadog_metric_register_buffer");
ASSIGN_DLSYM(datadog_metric_add_point, "datadog_metric_add_point");
ASSIGN_DLSYM(_ddtrace_emit_asm_event, "ddtrace_emit_asm_event");
ASSIGN_DLSYM(
_ddtrace_guess_endpoint_from_url, "ddtrace_guess_endpoint_from_url");
Expand Down Expand Up @@ -150,11 +150,11 @@ void dd_trace_rinit(void) { _asm_event_emitted = false; }

static void _setup_testing_telemetry_functions(void)
{
if (ddtrace_metric_register_buffer == NULL) {
ddtrace_metric_register_buffer = _test_ddtrace_metric_register_buffer;
if (datadog_metric_register_buffer == NULL) {
datadog_metric_register_buffer = _test_datadog_metric_register_buffer;
}
if (ddtrace_metric_add_point == NULL) {
ddtrace_metric_add_point = _test_ddtrace_metric_add_point;
if (datadog_metric_add_point == NULL) {
datadog_metric_add_point = _test_datadog_metric_add_point;
}
}

Expand Down Expand Up @@ -350,18 +350,18 @@ zend_string *nullable dd_trace_get_formatted_runtime_id(bool persistent)

const uint8_t *nullable dd_trace_get_formatted_session_id(void)
{
if (_ddtrace_get_formatted_session_id == NULL) {
if (_datadog_get_formatted_session_id == NULL) {
return NULL;
}
return _ddtrace_get_formatted_session_id();
return _datadog_get_formatted_session_id();
}

uint64_t dd_trace_get_sidecar_queue_id(void)
{
if (_ddtrace_get_sidecar_queue_id == NULL) {
if (_datadog_get_sidecar_queue_id == NULL) {
return 0;
}
return _ddtrace_get_sidecar_queue_id();
return _datadog_get_sidecar_queue_id();
}

void dd_trace_set_priority_sampling_on_span_zobj(zend_object *nonnull root_span,
Expand Down Expand Up @@ -413,10 +413,10 @@ zend_string *nullable dd_ip_extraction_find(zval *nonnull server)

struct telemetry_rc_info dd_trace_get_telemetry_rc_info(void)
{
if (!_ddtrace_get_telemetry_rc_info) {
if (!_datadog_get_telemetry_rc_info) {
return (struct telemetry_rc_info){0};
}
__auto_type tel_rc_info = _ddtrace_get_telemetry_rc_info();
__auto_type tel_rc_info = _datadog_get_telemetry_rc_info();

mlog(dd_log_trace,
"Remote config path: %s, service name: %.*s, env name: %.*s",
Expand Down Expand Up @@ -601,19 +601,19 @@ static const zend_function_entry functions[] = {

static void _register_testing_objects(void) { dd_phpobj_reg_funcs(functions); }

static void _test_ddtrace_metric_register_buffer(
static void _test_datadog_metric_register_buffer(
zend_string *nonnull name, ddtrace_metric_type type, ddtrace_metric_ns ns)
{
php_error_docref(NULL, E_NOTICE,
"Would call ddtrace_metric_register_buffer with name=%.*s "
"Would call datadog_metric_register_buffer with name=%.*s "
"type=%d ns=%d",
(int)ZSTR_LEN(name), ZSTR_VAL(name), type, ns);
}
static bool _test_ddtrace_metric_add_point(
static bool _test_datadog_metric_add_point(
zend_string *nonnull name, double value, zend_string *nonnull tags)
{
php_error_docref(NULL, E_NOTICE,
"Would call to ddtrace_metric_add_point with name=%.*s value=%f "
"Would call to datadog_metric_add_point with name=%.*s value=%f "
"tags=%.*s",
(int)ZSTR_LEN(name), ZSTR_VAL(name), value, (int)ZSTR_LEN(tags),
ZSTR_VAL(tags));
Expand Down
4 changes: 2 additions & 2 deletions appsec/src/extension/ddtrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ typedef enum {
DDTRACE_METRIC_NAMESPACE_SIDECAR,
} ddtrace_metric_ns;

extern void (*nullable ddtrace_metric_register_buffer)(
extern void (*nullable datadog_metric_register_buffer)(
zend_string *nonnull name, ddtrace_metric_type type, ddtrace_metric_ns ns);
extern bool (*nullable ddtrace_metric_add_point)(zend_string *nonnull name,
extern bool (*nullable datadog_metric_add_point)(zend_string *nonnull name,
double value, zend_string *nonnull tags);
16 changes: 8 additions & 8 deletions appsec/src/extension/telemetry.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,9 @@ void dd_telemetry_note_helper_string_meta(const char *nonnull key,
void dd_telemetry_add_metric(zend_string *nonnull name_zstr, double value,
zend_string *nonnull tags_zstr, ddtrace_metric_type type)
{
ddtrace_metric_register_buffer(
datadog_metric_register_buffer(
name_zstr, type, DDTRACE_METRIC_NAMESPACE_APPSEC);
ddtrace_metric_add_point(name_zstr, value, tags_zstr);
datadog_metric_add_point(name_zstr, value, tags_zstr);
mlog_g(dd_log_debug,
"Telemetry metric %.*s added with tags %.*s and value %f",
(int)ZSTR_LEN(name_zstr), ZSTR_VAL(name_zstr), (int)ZSTR_LEN(tags_zstr),
Expand Down Expand Up @@ -162,8 +162,8 @@ void dd_telemetry_helper_conn_close(void)
// NOLINTNEXTLINE(bugprone-easily-swappable-parameters)
void dd_telemetry_submit_duration_ext(double waf_ext_us, double rasp_ext_us)
{
if (!dd_trace_loaded() || ddtrace_metric_register_buffer == NULL ||
ddtrace_metric_add_point == NULL) {
if (!dd_trace_loaded() || datadog_metric_register_buffer == NULL ||
datadog_metric_add_point == NULL) {
return;
}

Expand All @@ -173,16 +173,16 @@ void dd_telemetry_submit_duration_ext(double waf_ext_us, double rasp_ext_us)
}

if (waf_ext_us > 0.0) {
ddtrace_metric_register_buffer(_waf_duration_ext_tel_zstr,
datadog_metric_register_buffer(_waf_duration_ext_tel_zstr,
DDTRACE_METRIC_TYPE_DISTRIBUTION, DDTRACE_METRIC_NAMESPACE_APPSEC);
ddtrace_metric_add_point(
datadog_metric_add_point(
_waf_duration_ext_tel_zstr, waf_ext_us, tags_zstr);
}

if (rasp_ext_us > 0.0) {
ddtrace_metric_register_buffer(_rasp_duration_ext_tel_zstr,
datadog_metric_register_buffer(_rasp_duration_ext_tel_zstr,
DDTRACE_METRIC_TYPE_DISTRIBUTION, DDTRACE_METRIC_NAMESPACE_APPSEC);
ddtrace_metric_add_point(
datadog_metric_add_point(
_rasp_duration_ext_tel_zstr, rasp_ext_us, tags_zstr);
}

Expand Down
6 changes: 3 additions & 3 deletions appsec/third_party/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,15 +47,15 @@ if(DD_APPSEC_BUILD_HELPER)
endif()

if(DD_APPSEC_BUILD_EXTENSION)
file(GLOB_RECURSE MPACK_C_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/../../ext/vendor/mpack/*.c)
file(GLOB_RECURSE MPACK_C_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/../../tracer/vendor/mpack/*.c)
add_library(mpack OBJECT ${MPACK_C_SOURCES})
set_target_properties(mpack PROPERTIES
POSITION_INDEPENDENT_CODE 1
C_VISIBILITY_PRESET hidden)

target_include_directories(mpack
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/../../ext/vendor/mpack/
${CMAKE_CURRENT_SOURCE_DIR}/../../tracer/vendor/mpack/
${CMAKE_CURRENT_SOURCE_DIR}/../src/extension/mpack/)
target_link_libraries(mpack PUBLIC PhpConfig) # for the allocation functions
target_compile_definitions(mpack PUBLIC MPACK_HAS_CONFIG=1)
Expand All @@ -67,7 +67,7 @@ if(DD_APPSEC_BUILD_EXTENSION)

if(DD_APPSEC_TESTING)
add_library(mpack_malloc OBJECT ${MPACK_C_SOURCES})
target_include_directories(mpack_malloc PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../ext/vendor/mpack/)
target_include_directories(mpack_malloc PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../../tracer/vendor/mpack/)
target_compile_definitions(mpack_malloc PUBLIC MPACK_STDIO=0 MPACK_WRITE_TRACKING=1 MPACK_BUFFER_SIZE=131072)
endif()
endif()
Expand Down
18 changes: 9 additions & 9 deletions components-rs/ddtrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ extern ddog_Uuid ddtrace_runtime_id;

extern ddog_Uuid ddtrace_session_id;

extern uint8_t ddtrace_formatted_session_id[36];
extern uint8_t datadog_formatted_session_id[36];

extern uint8_t ddtrace_formatted_root_session_id[36];
extern uint8_t datadog_formatted_root_session_id[36];

extern uint8_t ddtrace_formatted_parent_session_id[36];
extern uint8_t datadog_formatted_parent_session_id[36];

extern void (*ddog_log_callback)(ddog_CharSlice);

Expand All @@ -31,15 +31,15 @@ extern const uint8_t *DDOG_PHP_FUNCTION;
* # Safety
* Must be called from a single-threaded context, such as MINIT or first rinit.
*/
void ddtrace_generate_runtime_id(void);
void datadog_generate_runtime_id(void);

/**
* # Safety
* Must be called from a single-threaded context, such as MINIT.
*/
void ddtrace_generate_session_id(void);
void datadog_generate_session_id(void);

void ddtrace_format_runtime_id(uint8_t (*buf)[36]);
void datadog_format_runtime_id(uint8_t (*buf)[36]);

ddog_CharSlice ddtrace_get_container_id(void);

Expand All @@ -49,9 +49,9 @@ char *ddtrace_strip_invalid_utf8(const char *input, uintptr_t *len);

void ddtrace_drop_rust_string(char *input, uintptr_t len);

struct ddog_Endpoint *ddtrace_parse_agent_url(ddog_CharSlice url);
struct ddog_Endpoint *datadog_parse_agent_url(ddog_CharSlice url);

void ddtrace_endpoint_as_crashtracker_config(const struct ddog_Endpoint *endpoint,
void datadog_endpoint_as_crashtracker_config(const struct ddog_Endpoint *endpoint,
void (*callback)(ddog_crasht_EndpointConfig, void*),
void *userdata);

Expand Down Expand Up @@ -199,7 +199,7 @@ ddog_MaybeError ddog_sidecar_connect_php(struct ddog_SidecarTransport **connecti
uint64_t backpressure_bytes,
uint64_t backpressure_queue);

void ddtrace_sidecar_reconnect(struct ddog_SidecarTransport **transport,
void datadog_sidecar_reconnect(struct ddog_SidecarTransport **transport,
struct ddog_SidecarTransport *(*factory)(void));

bool ddog_shm_limiter_inc(const struct ddog_MaybeShmLimiter *limiter, uint32_t limit);
Expand Down
24 changes: 12 additions & 12 deletions components-rs/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,30 +38,30 @@ pub static mut ddtrace_session_id: Uuid = Uuid::nil();

#[no_mangle]
#[allow(non_upper_case_globals)]
pub static mut ddtrace_formatted_session_id: [u8; 36] = [0u8; 36];
pub static mut datadog_formatted_session_id: [u8; 36] = [0u8; 36];

#[no_mangle]
#[allow(non_upper_case_globals)]
pub static mut ddtrace_formatted_root_session_id: [u8; 36] = [0u8; 36];
pub static mut datadog_formatted_root_session_id: [u8; 36] = [0u8; 36];

#[no_mangle]
#[allow(non_upper_case_globals)]
pub static mut ddtrace_formatted_parent_session_id: [u8; 36] = [0u8; 36];
pub static mut datadog_formatted_parent_session_id: [u8; 36] = [0u8; 36];

/// # Safety
/// Must be called from a single-threaded context, such as MINIT or first rinit.
#[no_mangle]
pub unsafe extern "C" fn ddtrace_generate_runtime_id() {
pub unsafe extern "C" fn datadog_generate_runtime_id() {
ddtrace_runtime_id = Uuid::new_v4();
}

/// # Safety
/// Must be called from a single-threaded context, such as MINIT.
#[no_mangle]
pub unsafe extern "C" fn ddtrace_generate_session_id() {
pub unsafe extern "C" fn datadog_generate_session_id() {
ddtrace_session_id = Uuid::new_v4();
ddtrace_runtime_id = ddtrace_session_id;
ddtrace_session_id.as_hyphenated().encode_lower(&mut ddtrace_formatted_session_id);
ddtrace_session_id.as_hyphenated().encode_lower(&mut datadog_formatted_session_id);

unsafe fn set(name: &str, value: &mut [u8; 36], force: bool) {
if let Ok(str) = std::env::var(name) {
Expand All @@ -73,15 +73,15 @@ pub unsafe extern "C" fn ddtrace_generate_session_id() {
}
}
}
std::env::set_var(name, OsStr::from_encoded_bytes_unchecked(&ddtrace_formatted_session_id));
std::env::set_var(name, OsStr::from_encoded_bytes_unchecked(&datadog_formatted_session_id));
}

set("_DD_PARENT_PHP_SESSION_ID", &mut ddtrace_formatted_parent_session_id, true);
set("_DD_ROOT_PHP_SESSION_ID", &mut ddtrace_formatted_root_session_id, false);
set("_DD_PARENT_PHP_SESSION_ID", &mut datadog_formatted_parent_session_id, true);
set("_DD_ROOT_PHP_SESSION_ID", &mut datadog_formatted_root_session_id, false);
}

#[no_mangle]
pub extern "C" fn ddtrace_format_runtime_id(buf: &mut [u8; 36]) {
pub extern "C" fn datadog_format_runtime_id(buf: &mut [u8; 36]) {
// Safety: ddtrace_runtime_id is only supposed to be mutated from single-
// threaded contexts, so reads should always be safe.
unsafe { ddtrace_runtime_id.as_hyphenated().encode_lower(buf) };
Expand Down Expand Up @@ -120,7 +120,7 @@ pub unsafe extern "C" fn ddtrace_drop_rust_string(input: *mut c_char, len: usize
}

#[no_mangle]
pub unsafe extern "C" fn ddtrace_parse_agent_url(
pub unsafe extern "C" fn datadog_parse_agent_url(
url: CharSlice,
) -> std::option::Option<Box<Endpoint>> {
parse_uri(url.to_utf8_lossy().as_ref())
Expand All @@ -147,7 +147,7 @@ pub unsafe extern "C" fn ddtrace_parse_agent_url(

#[no_mangle]
#[cfg(unix)]
pub unsafe extern "C" fn ddtrace_endpoint_as_crashtracker_config(
pub unsafe extern "C" fn datadog_endpoint_as_crashtracker_config(
endpoint: &Endpoint,
callback: unsafe extern "C" fn(EndpointConfig<'_>, *mut std::ffi::c_void),
userdata: *mut std::ffi::c_void,
Expand Down
2 changes: 1 addition & 1 deletion components-rs/sidecar.rs
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ pub extern "C" fn ddog_sidecar_connect_php(
}

#[no_mangle]
pub extern "C" fn ddtrace_sidecar_reconnect(
pub extern "C" fn datadog_sidecar_reconnect(
transport: &mut Box<SidecarTransport>,
factory: unsafe extern "C" fn() -> Option<Box<SidecarTransport>>,
) {
Expand Down
1 change: 0 additions & 1 deletion components/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ add_library(datadog_php_components INTERFACE)

add_subdirectory(string_view)

add_subdirectory(container_id)
add_subdirectory(sapi)
add_subdirectory(stack-sample)

Expand Down
Loading
Loading