projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: illegal memory access in relayd_add_stream
[lttng-tools.git]
/
src
/
common
/
relayd
/
relayd.c
diff --git
a/src/common/relayd/relayd.c
b/src/common/relayd/relayd.c
index 9e9525503a971dc993237aae1cfdf9188bdc29f4..7f0ea74e94085b99873049a736941015e85fda5c 100644
(file)
--- a/
src/common/relayd/relayd.c
+++ b/
src/common/relayd/relayd.c
@@
-254,16
+254,16
@@
int relayd_add_stream(struct lttcomm_relayd_sock *rsock, const char *channel_nam
/* Compat with relayd 2.1 */
if (rsock->minor == 1) {
memset(&msg, 0, sizeof(msg));
/* Compat with relayd 2.1 */
if (rsock->minor == 1) {
memset(&msg, 0, sizeof(msg));
- if (strlen(channel_name) >= sizeof(msg.channel_name)) {
+ if (lttng_strncpy(msg.channel_name, channel_name,
+ sizeof(msg.channel_name))) {
ret = -1;
goto error;
}
ret = -1;
goto error;
}
- strncpy(msg.channel_name, channel_name, sizeof(msg.channel_name));
-
if (strlen(pathname) >= sizeof(msg.pathname
)) {
+ if (lttng_strncpy(msg.pathname, pathname,
+
sizeof(msg.pathname)
)) {
ret = -1;
goto error;
}
ret = -1;
goto error;
}
- strncpy(msg.pathname, pathname, sizeof(msg.pathname));
/* Send command */
ret = send_command(rsock, RELAYD_ADD_STREAM, (void *) &msg, sizeof(msg), 0);
/* Send command */
ret = send_command(rsock, RELAYD_ADD_STREAM, (void *) &msg, sizeof(msg), 0);
@@
-273,16
+273,16
@@
int relayd_add_stream(struct lttcomm_relayd_sock *rsock, const char *channel_nam
} else {
memset(&msg_2_2, 0, sizeof(msg_2_2));
/* Compat with relayd 2.2+ */
} else {
memset(&msg_2_2, 0, sizeof(msg_2_2));
/* Compat with relayd 2.2+ */
- if (strlen(channel_name) >= sizeof(msg_2_2.channel_name)) {
+ if (lttng_strncpy(msg_2_2.channel_name, channel_name,
+ sizeof(msg_2_2.channel_name))) {
ret = -1;
goto error;
}
ret = -1;
goto error;
}
- strncpy(msg_2_2.channel_name, channel_name, sizeof(msg_2_2.channel_name));
-
if (strlen(pathname) >= sizeof(msg_2_2.pathname
)) {
+ if (lttng_strncpy(msg_2_2.pathname, pathname,
+
sizeof(msg_2_2.pathname)
)) {
ret = -1;
goto error;
}
ret = -1;
goto error;
}
- strncpy(msg_2_2.pathname, pathname, sizeof(msg_2_2.pathname));
msg_2_2.tracefile_size = htobe64(tracefile_size);
msg_2_2.tracefile_count = htobe64(tracefile_count);
msg_2_2.tracefile_size = htobe64(tracefile_size);
msg_2_2.tracefile_count = htobe64(tracefile_count);
This page took
0.023772 seconds
and
4
git commands to generate.