⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tsocket.c

📁 wm PNE 3.3 source code, running at more than vxworks6.x version.
💻 C
字号:
/* $Header: /usr/cvsroot/target/src/wrn/wm/demo/socktest/tsocket.c,v 1.1.1.1 2001/11/05 17:49:15 tneale Exp $ *//* * Copyright (C) 1999-2005 Wind River Systems, Inc. * All rights reserved.  Provided under license only. * Distribution or other use of this software is only * permitted pursuant to the terms of a license agreement * from Wind River Systems (and is otherwise prohibited). * Refer to that license agreement for terms of use. *//**************************************************************************** *  Copyright 1998 Integrated Systems, Inc. *  All rights reserved. ****************************************************************************//* * $Log: tsocket.c,v $ * Revision 1.1.1.1  2001/11/05 17:49:15  tneale * Tornado shuffle * * Revision 1.2  2001/01/19 22:24:56  paul * Update copyright. * * Revision 1.1  2000/10/16 19:23:18  paul * Renamed from test_socket.c * * Revision 1.7  2000/03/17 00:14:49  meister * Update copyright message * * Revision 1.5  1999/05/12 19:04:48  paul * Fixed iteration limit for get-a-bunch-of-sockets test. * * Revision 1.4  1999/02/18 04:16:18  wes * Socket Merge: new code (socket tests). * * Revision 1.3.2.5  1999/01/06 21:43:18  paul * changed the magic return-a-socket value from 1 to 17, * to avoid confusing the select test * * Revision 1.3.2.4  1998/11/06 23:36:55  paul * rototill to support tcp * *//* [clearcase]modification history-------------------01a,19apr05,job  update copyright notices*/#include "test.h"voidtest_socket(int flags){  int s, i, sock_array[128];  s = test(0, "socket invalid domain", 	   socket(-1, SOCK_DGRAM, 0),	   -1, EPROTONOSUPPORT);  close(s);  s = test(0, "socket unspecified domain",	   socket(PF_UNSPEC, SOCK_DGRAM, 0),	   -1, EPROTONOSUPPORT);  close(s);  s = test(0, "socket invalid type",	   socket(PF_INET, 0, 0),	   -1, EPROTONOSUPPORT);  close(s);  s = test(0, "socket type/proto disagreement",	   socket(PF_INET, SOCK_DGRAM, IPPROTO_TCP),	   -1, EPROTONOSUPPORT);  close(s);  if (flags & TEST_UDP) {    s = test(0, "socket(SOCK_DGRAM, 0)",	     socket(PF_INET, SOCK_DGRAM, 0),	     17, 0);    close(s);        s = test(0, "socket(SOCK_DGRAM, IPPROTO_UDP)",	     socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP),	     17, 0);    close(s);  }  if (flags & TEST_TCP) {    s = test(0, "socket(SOCK_STREAM, 0)",	     socket(PF_INET, SOCK_STREAM, 0),	     17, 0);    close(s);    s = test(0, "socket(SOCK_STREAM, IPPROTO_TCP)",	     socket(PF_INET, SOCK_STREAM, IPPROTO_TCP),	     17, 0);    close(s);  }#if 0  s = test(0, "socket(SOCK_RAW, 0)",	   socket(PF_INET, SOCK_RAW, 0),	   17, 0);  close(s);  s = test(0, "socket(SOCK_RAW, IPPROTO_ICMP)",	   socket(PF_INET, SOCK_RAW, IPPROTO_ICMP),	   17, 0);  close(s);#endif  for (i = 0; i < (sizeof(sock_array) / sizeof(sock_array[0])); ++i) {    if ((s = socket(PF_INET, SOCK_DGRAM, 0)) == -1)      break;    sock_array[i] = s;  }  if (!quiet) printf("INFO: socket: got %d DGRAM sockets\n", i);#if !defined(TEST_BSD) && defined(INSTALL_BUG) && INSTALL_BUG{   extern void socktable_dump(void);  if (verbose)    socktable_dump();}#endif  for (--i ; i >= 0; --i)    close(sock_array[i]);  {    int opt, namelen;    namelen=sizeof(opt);    test(0, "getsockopt on closed socket", 	 getsockopt(s, SOL_SOCKET, SO_REUSEADDR, (void *) &opt, &namelen),	 -1, EBADF);  }  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -