File: source.tpp

package info (click to toggle)
tpp 1.3.1-8.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 468 kB
  • sloc: ruby: 1,454; lisp: 111; sh: 40; makefile: 32
file content (49 lines) | stat: -rw-r--r-- 1,103 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--title Some Source Code Examples
--author Andreas Krennmair
--date today
--newpage
--center The Famous "Hello World" Source Code
--beginoutput
#include <stdio.h>

int main(void) {
  puts("Hello World");
  return 0;
}
--endoutput
--newpage
--center The Very Same Example, But This Time In Pieces
--beginoutput
#include <stdio.h>
---

int main(void) {
---
  puts("Hello World");
---
  return 0;
---
}
--endoutput
--newpage
--heading This is some example source code

--beginoutput
static void run_command(char *cmd, char *ip) {
  int pid;
  pid = fork();
  if (pid == 0) {
    char env_ip[20], env_cmd[strlen(cmd)+10];
    char *const envp[] = { env_ip, env_cmd, "PATH=/bin:/usr/bin", 0 };
    snprintf(env_cmd, sizeof(env_cmd), "CMD=%s", cmd);
    snprintf(env_ip, sizeof(env_ip), "IP=%s", ip);
    execle("/bin/sh", "/bin/sh", "-c", cmd, NULL, envp);
    limit_syslog(LOG_ERR, "execl of %s failed: %s", cmd, strerror(errno));
    exit(EXIT_FAILURE);
  } else if (pid == -1) {
    limit_syslog(LOG_ERR, "fork failed: %s", strerror(errno));
  } else {
    (void) waitpid(pid, NULL, 0);
  }
}
--endoutput