X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ust%2Fust.c;h=766a2fa2c01e20d20c4b3acd8c921a1aa135db0e;hb=e4621c7f086a79cd5a454f3d7ff42b5adf244c1a;hp=015629481b8bbe5aadef0d35b02479b3cd310164;hpb=aafb1650caa90246ada3cc2c4ca7fc9493673617;p=lttng-ust.git diff --git a/ust/ust.c b/ust/ust.c index 01562948..766a2fa2 100644 --- a/ust/ust.c +++ b/ust/ust.c @@ -3,19 +3,8 @@ #include #include #include -#include -#include -#include -#include -#include -#define UNIX_PATH_MAX 108 -#define SOCK_DIR "/tmp/socks" -#define UST_SIGNAL SIGIO - -struct ust_msg { - char *raw; -}; +#include "ustcomm.h" void parse_opts(int argc, char **argv) { @@ -56,77 +45,13 @@ void parse_opts(int argc, char **argv) } -void signal_process(pid_t pid) -{ - int result; - - result = kill(pid, UST_SIGNAL); - if(result == -1) { - perror("kill"); - return; - } - - sleep(1); -} - -int send_message(pid_t pid, const char *msg) -{ - int fd; - int result; - struct sockaddr_un addr; - - result = fd = socket(PF_UNIX, SOCK_DGRAM, 0); - if(result == -1) { - perror("socket"); - return 1; - } - - addr.sun_family = AF_UNIX; - - result = snprintf(addr.sun_path, UNIX_PATH_MAX, "%s/%d", SOCK_DIR, pid); - if(result >= UNIX_PATH_MAX) { - fprintf(stderr, "string overflow allocating socket name"); - return 1; - } - - char *buf; - - asprintf(&buf, "%s\n", msg); - - signal_process(pid); - - result = sendto(fd, buf, strlen(buf), 0, (struct sockaddr *)&addr, sizeof(addr)); - if(result == -1) { - perror("sendto"); - return 1; - } - - free(buf); - -// result = fd = open(sockfile, O_RDWR); -// if(result == -1 && errno == ENXIO) { -// fprintf(stderr, "signalling process\n"); -// -// result = fd = open(sockfile, O_RDWR); -// if(result == -1) { -// perror("open"); -// return 1; -// } -// } -// else if(result == -1) { -// perror("open"); -// return 1; -// } - -} - int main(int argc, char *argv[]) { pid_t pid = atoi(argv[1]); char *msg = argv[2]; - send_message(pid, msg); + send_message(pid, msg, NULL); return 0; }