| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/openssh/src/openbsd-compat/setproctitle.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||||||||
| 2 | - | |||||||||||||||||||
| 3 | - | |||||||||||||||||||
| 4 | - | |||||||||||||||||||
| 5 | - | |||||||||||||||||||
| 6 | - | |||||||||||||||||||
| 7 | - | |||||||||||||||||||
| 8 | - | |||||||||||||||||||
| 9 | - | |||||||||||||||||||
| 10 | static char *argv_start = | - | ||||||||||||||||||
| 11 | ((void *)0) | - | ||||||||||||||||||
| 12 | ; | - | ||||||||||||||||||
| 13 | static size_t argv_env_len = 0; | - | ||||||||||||||||||
| 14 | - | |||||||||||||||||||
| 15 | - | |||||||||||||||||||
| 16 | - | |||||||||||||||||||
| 17 | - | |||||||||||||||||||
| 18 | void | - | ||||||||||||||||||
| 19 | compat_init_setproctitle(int argc, char *argv[]) | - | ||||||||||||||||||
| 20 | { | - | ||||||||||||||||||
| 21 | - | |||||||||||||||||||
| 22 | - | |||||||||||||||||||
| 23 | extern char **environ; | - | ||||||||||||||||||
| 24 | char *lastargv = | - | ||||||||||||||||||
| 25 | ((void *)0) | - | ||||||||||||||||||
| 26 | ; | - | ||||||||||||||||||
| 27 | char **envp = environ; | - | ||||||||||||||||||
| 28 | int i; | - | ||||||||||||||||||
| 29 | - | |||||||||||||||||||
| 30 | - | |||||||||||||||||||
| 31 | - | |||||||||||||||||||
| 32 | - | |||||||||||||||||||
| 33 | - | |||||||||||||||||||
| 34 | - | |||||||||||||||||||
| 35 | - | |||||||||||||||||||
| 36 | if (argc == 0
| 0-2 | ||||||||||||||||||
| 37 | ((void *)0)
| 0-2 | ||||||||||||||||||
| 38 | ) | - | ||||||||||||||||||
| 39 | return; never executed: return; | 0 | ||||||||||||||||||
| 40 | - | |||||||||||||||||||
| 41 | - | |||||||||||||||||||
| 42 | for (i = 0; envp[i] !=
| 2-110 | ||||||||||||||||||
| 43 | ((void *)0)
| 2-110 | ||||||||||||||||||
| 44 | ; i++) | - | ||||||||||||||||||
| 45 | ; executed 110 times by 1 test: ;Executed by:
| 110 | ||||||||||||||||||
| 46 | if ((
| 0-2 | ||||||||||||||||||
| 47 | ((void *)0)
| 0-2 | ||||||||||||||||||
| 48 | ) { | - | ||||||||||||||||||
| 49 | environ = envp; | - | ||||||||||||||||||
| 50 | return; never executed: return; | 0 | ||||||||||||||||||
| 51 | } | - | ||||||||||||||||||
| 52 | - | |||||||||||||||||||
| 53 | - | |||||||||||||||||||
| 54 | - | |||||||||||||||||||
| 55 | - | |||||||||||||||||||
| 56 | - | |||||||||||||||||||
| 57 | for (i = 0; i < argc
| 2-8 | ||||||||||||||||||
| 58 | if (lastargv ==
| 2-6 | ||||||||||||||||||
| 59 | ((void *)0)
| 2-6 | ||||||||||||||||||
| 60 | || lastargv + 1 == argv[i]
| 0-6 | ||||||||||||||||||
| 61 | lastargv = argv[i] + strlen(argv[i]); executed 8 times by 1 test: lastargv = argv[i] + strlen(argv[i]);Executed by:
| 8 | ||||||||||||||||||
| 62 | } executed 8 times by 1 test: end of blockExecuted by:
| 8 | ||||||||||||||||||
| 63 | for (i = 0; envp[i] !=
| 2-110 | ||||||||||||||||||
| 64 | ((void *)0)
| 2-110 | ||||||||||||||||||
| 65 | ; i++) { | - | ||||||||||||||||||
| 66 | if (lastargv + 1 == envp[i]
| 0-110 | ||||||||||||||||||
| 67 | lastargv = envp[i] + strlen(envp[i]); executed 110 times by 1 test: lastargv = envp[i] + strlen(envp[i]);Executed by:
| 110 | ||||||||||||||||||
| 68 | } executed 110 times by 1 test: end of blockExecuted by:
| 110 | ||||||||||||||||||
| 69 | - | |||||||||||||||||||
| 70 | argv[1] = | - | ||||||||||||||||||
| 71 | ((void *)0) | - | ||||||||||||||||||
| 72 | ; | - | ||||||||||||||||||
| 73 | argv_start = argv[0]; | - | ||||||||||||||||||
| 74 | argv_env_len = lastargv - argv[0] - 1; | - | ||||||||||||||||||
| 75 | - | |||||||||||||||||||
| 76 | - | |||||||||||||||||||
| 77 | - | |||||||||||||||||||
| 78 | - | |||||||||||||||||||
| 79 | - | |||||||||||||||||||
| 80 | for (i = 0; envp[i] !=
| 2-110 | ||||||||||||||||||
| 81 | ((void *)0)
| 2-110 | ||||||||||||||||||
| 82 | ; i++) | - | ||||||||||||||||||
| 83 | environ[i] = executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 110 | ||||||||||||||||||
| 84 | (__extension__ (__builtin_constant_p (
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 85 | envp[i]
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 86 | )
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 87 | envp[i]
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 88 | ) + 1) - (size_t)(const void *)(
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 89 | envp[i]
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 90 | ) == 1)
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 91 | envp[i]
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 92 | ))[0] == '\0'
executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 93 | envp[i] executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 110 | ||||||||||||||||||
| 94 | ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)
never executed: __retval = (char *) memcpy (__retval, envp[i] , __len);executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 95 | envp[i] never executed: __retval = (char *) memcpy (__retval, envp[i] , __len);executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 96 | , __len); never executed: __retval; })) : __strdup (__retval = (char *) memcpy (__retval, envp[i] , __len);executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 0-110 | ||||||||||||||||||
| 97 | envp[i] executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 110 | ||||||||||||||||||
| 98 | ))) executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 110 | ||||||||||||||||||
| 99 | ; executed 110 times by 1 test: environ[i] = (__extension__ (__builtin_constant_p ( envp[i] ) && ((size_t)(const void *)(( envp[i] ) + 1) - (size_t)(const void *)( envp[i] ) == 1) ? (((const char *) ( envp[i] ))[0] == '\0' ? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen ( envp[i] ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, envp[i] , __len); __retval; })) : __strdup ( envp[i] ))) ;Executed by:
| 110 | ||||||||||||||||||
| 100 | environ[i] = | - | ||||||||||||||||||
| 101 | ((void *)0) | - | ||||||||||||||||||
| 102 | ; | - | ||||||||||||||||||
| 103 | - | |||||||||||||||||||
| 104 | } executed 2 times by 1 test: end of blockExecuted by:
| 2 | ||||||||||||||||||
| 105 | - | |||||||||||||||||||
| 106 | - | |||||||||||||||||||
| 107 | void | - | ||||||||||||||||||
| 108 | setproctitle(const char *fmt, ...) | - | ||||||||||||||||||
| 109 | { | - | ||||||||||||||||||
| 110 | - | |||||||||||||||||||
| 111 | va_list ap; | - | ||||||||||||||||||
| 112 | char buf[1024], ptitle[1024]; | - | ||||||||||||||||||
| 113 | size_t len = 0; | - | ||||||||||||||||||
| 114 | int r; | - | ||||||||||||||||||
| 115 | extern char *__progname; | - | ||||||||||||||||||
| 116 | - | |||||||||||||||||||
| 117 | - | |||||||||||||||||||
| 118 | - | |||||||||||||||||||
| 119 | - | |||||||||||||||||||
| 120 | - | |||||||||||||||||||
| 121 | if (argv_env_len <= 0
| 0 | ||||||||||||||||||
| 122 | return; never executed: return; | 0 | ||||||||||||||||||
| 123 | - | |||||||||||||||||||
| 124 | - | |||||||||||||||||||
| 125 | strlcpy(buf, __progname, sizeof(buf)); | - | ||||||||||||||||||
| 126 | - | |||||||||||||||||||
| 127 | r = -1; | - | ||||||||||||||||||
| 128 | - | |||||||||||||||||||
| 129 | __builtin_va_start( | - | ||||||||||||||||||
| 130 | ap | - | ||||||||||||||||||
| 131 | , | - | ||||||||||||||||||
| 132 | fmt | - | ||||||||||||||||||
| 133 | ) | - | ||||||||||||||||||
| 134 | ; | - | ||||||||||||||||||
| 135 | if (fmt !=
| 0 | ||||||||||||||||||
| 136 | ((void *)0)
| 0 | ||||||||||||||||||
| 137 | ) { | - | ||||||||||||||||||
| 138 | len = strlcat(buf, ": ", sizeof(buf)); | - | ||||||||||||||||||
| 139 | if (len < sizeof(buf)
| 0 | ||||||||||||||||||
| 140 | r = vsnprintf(buf + len, sizeof(buf) - len , fmt, ap); never executed: r = vsnprintf(buf + len, sizeof(buf) - len , fmt, ap); | 0 | ||||||||||||||||||
| 141 | } never executed: end of block | 0 | ||||||||||||||||||
| 142 | - | |||||||||||||||||||
| 143 | __builtin_va_end( | - | ||||||||||||||||||
| 144 | ap | - | ||||||||||||||||||
| 145 | ) | - | ||||||||||||||||||
| 146 | ; | - | ||||||||||||||||||
| 147 | if (r == -1
| 0 | ||||||||||||||||||
| 148 | return; never executed: return; | 0 | ||||||||||||||||||
| 149 | strnvis(ptitle, buf, sizeof(ptitle), | - | ||||||||||||||||||
| 150 | 0x02|0x10|0x08|0x01); | - | ||||||||||||||||||
| 151 | - | |||||||||||||||||||
| 152 | - | |||||||||||||||||||
| 153 | - | |||||||||||||||||||
| 154 | - | |||||||||||||||||||
| 155 | - | |||||||||||||||||||
| 156 | - | |||||||||||||||||||
| 157 | - | |||||||||||||||||||
| 158 | len = strlcpy(argv_start, ptitle, argv_env_len); | - | ||||||||||||||||||
| 159 | for(; len < argv_env_len
| 0 | ||||||||||||||||||
| 160 | argv_start[len] = '\0'; never executed: argv_start[len] = '\0'; | 0 | ||||||||||||||||||
| 161 | - | |||||||||||||||||||
| 162 | - | |||||||||||||||||||
| 163 | - | |||||||||||||||||||
| 164 | } never executed: end of block | 0 | ||||||||||||||||||
| Switch to Source code | Preprocessed file |