git.droids-corp.org
/
protos
/
xbee-avr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
avoid copy by using iovecs
[protos/xbee-avr.git]
/
commands.c
diff --git
a/commands.c
b/commands.c
index
446d92d
..
ffcd918
100644
(file)
--- a/
commands.c
+++ b/
commands.c
@@
-533,9
+533,15
@@
struct cmd_sendmsg_result {
static void cmd_sendmsg_parsed(void *parsed_result, void *data)
{
struct cmd_sendmsg_result *res = parsed_result;
static void cmd_sendmsg_parsed(void *parsed_result, void *data)
{
struct cmd_sendmsg_result *res = parsed_result;
+ struct xbee_msg msg;
(void)data;
(void)data;
- xbeeapp_send_msg(res->addr, res->data, strlen(res->data), 1);
+
+ msg.iovlen = 1;
+ msg.iov[0].buf = res->data;
+ msg.iov[0].len = strlen(res->data);
+
+ xbeeapp_send_msg(res->addr, &msg, 1);
}
const char PROGMEM str_sendmsg[] = "sendmsg";
}
const char PROGMEM str_sendmsg[] = "sendmsg";
@@
-676,9
+682,15
@@
struct cmd_sendmsg_name_result {
static void cmd_sendmsg_name_parsed(void *parsed_result, void *data)
{
struct cmd_sendmsg_name_result *res = parsed_result;
static void cmd_sendmsg_name_parsed(void *parsed_result, void *data)
{
struct cmd_sendmsg_name_result *res = parsed_result;
+ struct xbee_msg msg;
(void)data;
(void)data;
- xbeeapp_send_msg(res->neigh->addr, res->data, strlen(res->data), 1);
+
+ msg.iovlen = 1;
+ msg.iov[0].buf = res->data;
+ msg.iov[0].len = strlen(res->data);
+
+ xbeeapp_send_msg(res->neigh->addr, &msg, 1);
}
const parse_token_string_t PROGMEM cmd_sendmsg_name_sendmsg_name =
}
const parse_token_string_t PROGMEM cmd_sendmsg_name_sendmsg_name =