hotspot/src/os/windows/vm/os_windows.cpp
changeset 27400 c5955f4b7c84
parent 27164 6523fa019ffa
child 27458 eb5f1b4f01e1
equal deleted inserted replaced
27246:49642d463211 27400:c5955f4b7c84
  5089 
  5089 
  5090 int os::socket_close(int fd) {
  5090 int os::socket_close(int fd) {
  5091   return ::closesocket(fd);
  5091   return ::closesocket(fd);
  5092 }
  5092 }
  5093 
  5093 
  5094 int os::socket_available(int fd, jint *pbytes) {
       
  5095   int ret = ::ioctlsocket(fd, FIONREAD, (u_long*)pbytes);
       
  5096   return (ret < 0) ? 0 : 1;
       
  5097 }
       
  5098 
       
  5099 int os::socket(int domain, int type, int protocol) {
  5094 int os::socket(int domain, int type, int protocol) {
  5100   return ::socket(domain, type, protocol);
  5095   return ::socket(domain, type, protocol);
  5101 }
  5096 }
  5102 
  5097 
  5103 int os::listen(int fd, int count) {
       
  5104   return ::listen(fd, count);
       
  5105 }
       
  5106 
       
  5107 int os::connect(int fd, struct sockaddr* him, socklen_t len) {
  5098 int os::connect(int fd, struct sockaddr* him, socklen_t len) {
  5108   return ::connect(fd, him, len);
  5099   return ::connect(fd, him, len);
  5109 }
  5100 }
  5110 
  5101 
  5111 int os::accept(int fd, struct sockaddr* him, socklen_t* len) {
       
  5112   return ::accept(fd, him, len);
       
  5113 }
       
  5114 
       
  5115 int os::sendto(int fd, char* buf, size_t len, uint flags,
       
  5116                struct sockaddr* to, socklen_t tolen) {
       
  5117 
       
  5118   return ::sendto(fd, buf, (int)len, flags, to, tolen);
       
  5119 }
       
  5120 
       
  5121 int os::recvfrom(int fd, char *buf, size_t nBytes, uint flags,
       
  5122                  sockaddr* from, socklen_t* fromlen) {
       
  5123 
       
  5124   return ::recvfrom(fd, buf, (int)nBytes, flags, from, fromlen);
       
  5125 }
       
  5126 
       
  5127 int os::recv(int fd, char* buf, size_t nBytes, uint flags) {
  5102 int os::recv(int fd, char* buf, size_t nBytes, uint flags) {
  5128   return ::recv(fd, buf, (int)nBytes, flags);
  5103   return ::recv(fd, buf, (int)nBytes, flags);
  5129 }
  5104 }
  5130 
  5105 
  5131 int os::send(int fd, char* buf, size_t nBytes, uint flags) {
  5106 int os::send(int fd, char* buf, size_t nBytes, uint flags) {
  5132   return ::send(fd, buf, (int)nBytes, flags);
  5107   return ::send(fd, buf, (int)nBytes, flags);
  5133 }
  5108 }
  5134 
  5109 
  5135 int os::raw_send(int fd, char* buf, size_t nBytes, uint flags) {
  5110 int os::raw_send(int fd, char* buf, size_t nBytes, uint flags) {
  5136   return ::send(fd, buf, (int)nBytes, flags);
  5111   return ::send(fd, buf, (int)nBytes, flags);
  5137 }
       
  5138 
       
  5139 int os::timeout(int fd, long timeout) {
       
  5140   fd_set tbl;
       
  5141   struct timeval t;
       
  5142 
       
  5143   t.tv_sec  = timeout / 1000;
       
  5144   t.tv_usec = (timeout % 1000) * 1000;
       
  5145 
       
  5146   tbl.fd_count    = 1;
       
  5147   tbl.fd_array[0] = fd;
       
  5148 
       
  5149   return ::select(1, &tbl, 0, 0, &t);
       
  5150 }
       
  5151 
       
  5152 int os::get_host_name(char* name, int namelen) {
       
  5153   return ::gethostname(name, namelen);
       
  5154 }
       
  5155 
       
  5156 int os::socket_shutdown(int fd, int howto) {
       
  5157   return ::shutdown(fd, howto);
       
  5158 }
       
  5159 
       
  5160 int os::bind(int fd, struct sockaddr* him, socklen_t len) {
       
  5161   return ::bind(fd, him, len);
       
  5162 }
       
  5163 
       
  5164 int os::get_sock_name(int fd, struct sockaddr* him, socklen_t* len) {
       
  5165   return ::getsockname(fd, him, len);
       
  5166 }
       
  5167 
       
  5168 int os::get_sock_opt(int fd, int level, int optname,
       
  5169                      char* optval, socklen_t* optlen) {
       
  5170   return ::getsockopt(fd, level, optname, optval, optlen);
       
  5171 }
       
  5172 
       
  5173 int os::set_sock_opt(int fd, int level, int optname,
       
  5174                      const char* optval, socklen_t optlen) {
       
  5175   return ::setsockopt(fd, level, optname, optval, optlen);
       
  5176 }
  5112 }
  5177 
  5113 
  5178 // WINDOWS CONTEXT Flags for THREAD_SAMPLING
  5114 // WINDOWS CONTEXT Flags for THREAD_SAMPLING
  5179 #if defined(IA32)
  5115 #if defined(IA32)
  5180   #define sampling_context_flags (CONTEXT_FULL | CONTEXT_FLOATING_POINT | CONTEXT_EXTENDED_REGISTERS)
  5116   #define sampling_context_flags (CONTEXT_FULL | CONTEXT_FLOATING_POINT | CONTEXT_EXTENDED_REGISTERS)