embox

Форк
0
39 строк · 743.0 Байт
1
/**
2
 * @file
3
 * @brief
4
 *
5
 * @author  Anton Kozlov
6
 * @date    17.02.2015
7
 */
8

9
#include <string.h>
10
#include <stdlib.h>
11
#include <unistd.h>
12
#include <stdio.h>
13

14
#include "cnc_ipc.h"
15

16
static int cnc_ctrl_ipc_init(void) {
17
	const char *cnc_out = getenv(CNCIPC_OUT);
18
	return cnc_out ? atoi(cnc_out) : -1;
19
}
20

21
int main(int argc, char *argv[]) {
22

23
	if (0 == strncmp(getenv("QUERY_STRING"), "run", strlen("run"))) {
24
		char *arg[] = { "cnc_control", "test", NULL };
25
		int ipc_fd = cnc_ctrl_ipc_init();
26

27
		printf("HTTP/1.1 %d %s\r\n"
28
			"Content-Type: %s\r\n"
29
			"Connection: close\r\n"
30
			"\r\n", 200, "OK", "text/plain");
31

32
		dup2(ipc_fd, STDOUT_FILENO);
33
		close(STDIN_FILENO);
34
		dup2(ipc_fd, STDERR_FILENO);
35

36
		return execv(arg[0], arg);
37
	}
38
	return 0;
39
}
40

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.