builtins.c (56590) | builtins.c (57857) |
---|---|
1/*- 2 * Copyright (c) 1983, 1991, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 1983, 1991, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/usr.sbin/inetd/builtins.c 56590 2000-01-25 14:52:10Z shin $ | 26 * $FreeBSD: head/usr.sbin/inetd/builtins.c 57857 2000-03-09 15:07:38Z shin $ |
27 * 28 */ 29 30#include <sys/filio.h> 31#include <sys/ioccom.h> 32#include <sys/param.h> 33#include <sys/stat.h> 34#include <sys/socket.h> --- 73 unchanged lines hidden (view full) --- 108/* ARGSUSED */ 109void 110chargen_dg(s, sep) /* Character generator */ 111 int s; 112 struct servtab *sep; 113{ 114 struct sockaddr_storage ss; 115 static char *rs; | 27 * 28 */ 29 30#include <sys/filio.h> 31#include <sys/ioccom.h> 32#include <sys/param.h> 33#include <sys/stat.h> 34#include <sys/socket.h> --- 73 unchanged lines hidden (view full) --- 108/* ARGSUSED */ 109void 110chargen_dg(s, sep) /* Character generator */ 111 int s; 112 struct servtab *sep; 113{ 114 struct sockaddr_storage ss; 115 static char *rs; |
116 int len, size; | 116 int len; 117 socklen_t size; |
117 char text[LINESIZ+2]; 118 119 if (endring == 0) { 120 initring(); 121 rs = ring; 122 } 123 124 size = sizeof(ss); --- 9 unchanged lines hidden (view full) --- 134 else { 135 memmove(text, rs, len); 136 memmove(text + len, ring, LINESIZ - len); 137 } 138 if (++rs == endring) 139 rs = ring; 140 text[LINESIZ] = '\r'; 141 text[LINESIZ + 1] = '\n'; | 118 char text[LINESIZ+2]; 119 120 if (endring == 0) { 121 initring(); 122 rs = ring; 123 } 124 125 size = sizeof(ss); --- 9 unchanged lines hidden (view full) --- 135 else { 136 memmove(text, rs, len); 137 memmove(text + len, ring, LINESIZ - len); 138 } 139 if (++rs == endring) 140 rs = ring; 141 text[LINESIZ] = '\r'; 142 text[LINESIZ + 1] = '\n'; |
142 (void) sendto(s, text, sizeof(text), 0, 143 (struct sockaddr *)&ss, sizeof(ss)); | 143 (void) sendto(s, text, sizeof(text), 0, (struct sockaddr *)&ss, size); |
144} 145 146/* ARGSUSED */ 147void 148chargen_stream(s, sep) /* Character generator */ 149 int s; 150 struct servtab *sep; 151{ --- 33 unchanged lines hidden (view full) --- 185void 186daytime_dg(s, sep) /* Return human-readable time of day */ 187 int s; 188 struct servtab *sep; 189{ 190 char buffer[256]; 191 time_t clock; 192 struct sockaddr_storage ss; | 144} 145 146/* ARGSUSED */ 147void 148chargen_stream(s, sep) /* Character generator */ 149 int s; 150 struct servtab *sep; 151{ --- 33 unchanged lines hidden (view full) --- 185void 186daytime_dg(s, sep) /* Return human-readable time of day */ 187 int s; 188 struct servtab *sep; 189{ 190 char buffer[256]; 191 time_t clock; 192 struct sockaddr_storage ss; |
193 int size; | 193 socklen_t size; |
194 195 clock = time((time_t *) 0); 196 197 size = sizeof(ss); 198 if (recvfrom(s, buffer, sizeof(buffer), 0, 199 (struct sockaddr *)&ss, &size) < 0) 200 return; 201 202 if (check_loop((struct sockaddr *)&ss, sep)) 203 return; 204 205 (void) sprintf(buffer, "%.24s\r\n", ctime(&clock)); 206 (void) sendto(s, buffer, strlen(buffer), 0, | 194 195 clock = time((time_t *) 0); 196 197 size = sizeof(ss); 198 if (recvfrom(s, buffer, sizeof(buffer), 0, 199 (struct sockaddr *)&ss, &size) < 0) 200 return; 201 202 if (check_loop((struct sockaddr *)&ss, sep)) 203 return; 204 205 (void) sprintf(buffer, "%.24s\r\n", ctime(&clock)); 206 (void) sendto(s, buffer, strlen(buffer), 0, |
207 (struct sockaddr *)&ss, sizeof(ss)); | 207 (struct sockaddr *)&ss, size); |
208} 209 210/* ARGSUSED */ 211void 212daytime_stream(s, sep) /* Return human-readable time of day */ 213 int s; 214 struct servtab *sep; 215{ --- 48 unchanged lines hidden (view full) --- 264 265/* ARGSUSED */ 266void 267echo_dg(s, sep) /* Echo service -- echo data back */ 268 int s; 269 struct servtab *sep; 270{ 271 char buffer[BUFSIZE]; | 208} 209 210/* ARGSUSED */ 211void 212daytime_stream(s, sep) /* Return human-readable time of day */ 213 int s; 214 struct servtab *sep; 215{ --- 48 unchanged lines hidden (view full) --- 264 265/* ARGSUSED */ 266void 267echo_dg(s, sep) /* Echo service -- echo data back */ 268 int s; 269 struct servtab *sep; 270{ 271 char buffer[BUFSIZE]; |
272 int i, size; | 272 int i; 273 socklen_t size; |
273 struct sockaddr_storage ss; 274 275 size = sizeof(ss); 276 if ((i = recvfrom(s, buffer, sizeof(buffer), 0, 277 (struct sockaddr *)&ss, &size)) < 0) 278 return; 279 280 if (check_loop((struct sockaddr *)&ss, sep)) 281 return; 282 | 274 struct sockaddr_storage ss; 275 276 size = sizeof(ss); 277 if ((i = recvfrom(s, buffer, sizeof(buffer), 0, 278 (struct sockaddr *)&ss, &size)) < 0) 279 return; 280 281 if (check_loop((struct sockaddr *)&ss, sep)) 282 return; 283 |
283 (void) sendto(s, buffer, i, 0, (struct sockaddr *)&ss, 284 sizeof(ss)); | 284 (void) sendto(s, buffer, i, 0, (struct sockaddr *)&ss, size); |
285} 286 287/* ARGSUSED */ 288void 289echo_stream(s, sep) /* Echo service -- echo data back */ 290 int s; 291 struct servtab *sep; 292{ --- 340 unchanged lines hidden (view full) --- 633/* ARGSUSED */ 634void 635machtime_dg(s, sep) 636 int s; 637 struct servtab *sep; 638{ 639 unsigned long result; 640 struct sockaddr_storage ss; | 285} 286 287/* ARGSUSED */ 288void 289echo_stream(s, sep) /* Echo service -- echo data back */ 290 int s; 291 struct servtab *sep; 292{ --- 340 unchanged lines hidden (view full) --- 633/* ARGSUSED */ 634void 635machtime_dg(s, sep) 636 int s; 637 struct servtab *sep; 638{ 639 unsigned long result; 640 struct sockaddr_storage ss; |
641 int size; | 641 socklen_t size; |
642 643 size = sizeof(ss); 644 if (recvfrom(s, (char *)&result, sizeof(result), 0, 645 (struct sockaddr *)&ss, &size) < 0) 646 return; 647 648 if (check_loop((struct sockaddr *)&ss, sep)) 649 return; 650 651 result = machtime(); 652 (void) sendto(s, (char *) &result, sizeof(result), 0, | 642 643 size = sizeof(ss); 644 if (recvfrom(s, (char *)&result, sizeof(result), 0, 645 (struct sockaddr *)&ss, &size) < 0) 646 return; 647 648 if (check_loop((struct sockaddr *)&ss, sep)) 649 return; 650 651 result = machtime(); 652 (void) sendto(s, (char *) &result, sizeof(result), 0, |
653 (struct sockaddr *)&ss, sizeof(ss)); | 653 (struct sockaddr *)&ss, size); |
654} 655 656/* ARGSUSED */ 657void 658machtime_stream(s, sep) 659 int s; 660 struct servtab *sep; 661{ --- 94 unchanged lines hidden --- | 654} 655 656/* ARGSUSED */ 657void 658machtime_stream(s, sep) 659 int s; 660 struct servtab *sep; 661{ --- 94 unchanged lines hidden --- |