Mercurial > hg > nginx-quic
comparison src/os/unix/ngx_linux_init.c @ 391:b670db10cbbd
nginx-0.0.7-2004-07-14-20:01:42 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Wed, 14 Jul 2004 16:01:42 +0000 |
parents | f5431a4bbc7d |
children | 0526206251f6 |
comparison
equal
deleted
inserted
replaced
390:1471c6fb108a | 391:b670db10cbbd |
---|---|
3 #include <ngx_core.h> | 3 #include <ngx_core.h> |
4 | 4 |
5 | 5 |
6 char ngx_linux_kern_ostype[50]; | 6 char ngx_linux_kern_ostype[50]; |
7 char ngx_linux_kern_osrelease[20]; | 7 char ngx_linux_kern_osrelease[20]; |
8 | |
9 int ngx_linux_rtsig_max; | |
8 | 10 |
9 | 11 |
10 ngx_os_io_t ngx_os_io = { | 12 ngx_os_io_t ngx_os_io = { |
11 ngx_unix_recv, | 13 ngx_unix_recv, |
12 ngx_readv_chain, | 14 ngx_readv_chain, |
21 }; | 23 }; |
22 | 24 |
23 | 25 |
24 int ngx_os_init(ngx_log_t *log) | 26 int ngx_os_init(ngx_log_t *log) |
25 { | 27 { |
26 int name[2], len; | 28 int name[2], len, rtsig_max; |
27 | 29 |
28 name[0] = CTL_KERN; | 30 name[0] = CTL_KERN; |
29 name[1] = KERN_OSTYPE; | 31 name[1] = KERN_OSTYPE; |
30 len = sizeof(ngx_linux_kern_ostype); | 32 len = sizeof(ngx_linux_kern_ostype); |
31 if (sysctl(name, sizeof(name), ngx_linux_kern_ostype, &len, NULL, 0) | 33 if (sysctl(name, sizeof(name), ngx_linux_kern_ostype, &len, NULL, 0) |
32 == -1) { | 34 == -1) { |
33 ngx_log_error(NGX_LOG_ALERT, log, errno, "sysctl(KERN_OSTYPE) failed"); | 35 ngx_log_error(NGX_LOG_ALERT, log, ngx_errno, |
36 "sysctl(KERN_OSTYPE) failed"); | |
34 return NGX_ERROR; | 37 return NGX_ERROR; |
35 } | 38 } |
36 | 39 |
37 name[0] = CTL_KERN; | 40 name[0] = CTL_KERN; |
38 name[1] = KERN_OSRELEASE; | 41 name[1] = KERN_OSRELEASE; |
39 len = sizeof(ngx_linux_kern_osrelease); | 42 len = sizeof(ngx_linux_kern_osrelease); |
40 if (sysctl(name, sizeof(name), ngx_linux_kern_osrelease, &len, NULL, 0) | 43 if (sysctl(name, sizeof(name), ngx_linux_kern_osrelease, &len, NULL, 0) |
41 == -1) { | 44 == -1) { |
42 ngx_log_error(NGX_LOG_ALERT, log, errno, | 45 ngx_log_error(NGX_LOG_ALERT, log, ngx_errno, |
43 "sysctl(KERN_OSRELEASE) failed"); | 46 "sysctl(KERN_OSRELEASE) failed"); |
44 return NGX_ERROR; | 47 return NGX_ERROR; |
45 } | 48 } |
46 | 49 |
47 ngx_log_error(NGX_LOG_INFO, log, 0, "OS: %s %s", | 50 ngx_log_error(NGX_LOG_INFO, log, 0, "OS: %s %s", |
48 ngx_linux_kern_ostype, ngx_linux_kern_osrelease); | 51 ngx_linux_kern_ostype, ngx_linux_kern_osrelease); |
49 | 52 |
50 | 53 |
54 name[0] = CTL_KERN; | |
55 name[1] = KERN_RTSIGMAX; | |
56 len = sizeof(rtsig_max); | |
57 if (sysctl(name, sizeof(name), &rtsig_max, &len, NULL, 0) == -1) { | |
58 ngx_log_error(NGX_LOG_INFO, log, ngx_errno, | |
59 "sysctl(KERN_RTSIGMAX) failed"); | |
60 } else { | |
61 ngx_linux_rtsig_max = 1; | |
62 } | |
63 | |
64 | |
51 return ngx_posix_init(log); | 65 return ngx_posix_init(log); |
52 } | 66 } |