亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? unixendpoint.cc

?? 編譯工具
?? CC
字號(hào):
// -*- Mode: C++; -*-//                            Package   : omniORB// unixEndpoint.cc            Created on: 6 Aug 2001//                            Author    : Sai Lai Lo (sll)////    Copyright (C) 2001 AT&T Laboratories Cambridge////    This file is part of the omniORB library////    The omniORB library is free software; you can redistribute it and/or//    modify it under the terms of the GNU Library General Public//    License as published by the Free Software Foundation; either//    version 2 of the License, or (at your option) any later version.////    This library is distributed in the hope that it will be useful,//    but WITHOUT ANY WARRANTY; without even the implied warranty of//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU//    Library General Public License for more details.////    You should have received a copy of the GNU Library General Public//    License along with this library; if not, write to the Free//    Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA//    02111-1307, USA////// Description://	*** PROPRIETORY INTERFACE ***///*  $Log: unixEndpoint.cc,v $  Revision 1.1.2.12  2004/10/18 11:46:47  dgrisby  accept() error handling didn't work on MacOS X.  Revision 1.1.2.11  2004/10/17 22:27:24  dgrisby  Handle errors in accept() properly. Thanks Kamaldeep Singh Khanuja and  Jeremy Van Grinsven.  Revision 1.1.2.10  2003/11/12 16:04:16  dgrisby  Set sockets to close on exec.  Revision 1.1.2.9  2002/04/16 12:44:27  dpg1  Fix SSL accept bug, clean up logging.  Revision 1.1.2.8  2002/03/13 16:05:40  dpg1  Transport shutdown fixes. Reference count SocketCollections to avoid  connections using them after they are deleted. Properly close  connections when in thread pool mode.  Revision 1.1.2.7  2002/01/15 16:38:14  dpg1  On the road to autoconf. Dependencies refactored, configure.ac  written. No makefiles yet.  Revision 1.1.2.6  2001/11/28 20:33:43  dpg1  Minor Unix transport bugs.  Revision 1.1.2.5  2001/08/23 10:11:16  sll  Use AF_UNIX if AF_LOCAL is not defined.  Revision 1.1.2.4  2001/08/17 17:12:42  sll  Modularise ORB configuration parameters.  Revision 1.1.2.3  2001/08/08 15:58:17  sll  Set up the socket with the permission mode set in  omniORB::unixTransportPermission.  Revision 1.1.2.2  2001/08/07 15:42:17  sll  Make unix domain connections distinguishable on both the server and client  side.  Revision 1.1.2.1  2001/08/06 15:47:44  sll  Added support to use the unix domain socket as the local transport.*/#include <omniORB4/CORBA.h>#include <omniORB4/giopEndpoint.h>#include <orbParameters.h>#include <SocketCollection.h>#include <unix/unixConnection.h>#include <unix/unixAddress.h>#include <unix/unixEndpoint.h>#include <sys/un.h>#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <signal.h>#include <omniORB4/linkHacks.h>OMNI_EXPORT_LINK_FORCE_SYMBOL(unixEndpoint);#ifndef AF_LOCAL#  ifdef  AF_UNIX#    define AF_LOCAL AF_UNIX#  endif#endifOMNI_NAMESPACE_BEGIN(omni)/////////////////////////////////////////////////////////////////////////unixEndpoint::unixEndpoint(const char* filename) :  pd_socket(RC_INVALID_SOCKET),  pd_new_conn_socket(RC_INVALID_SOCKET), pd_callback_func(0),  pd_callback_cookie(0) {  pd_filename = filename;  pd_address_string = unixConnection::unToString(filename);}/////////////////////////////////////////////////////////////////////////unixEndpoint::~unixEndpoint() {  if (pd_socket != RC_INVALID_SOCKET) {    unlink(pd_filename);    CLOSESOCKET(pd_socket);    pd_socket = RC_INVALID_SOCKET;  }}/////////////////////////////////////////////////////////////////////////const char*unixEndpoint::type() const {  return "giop:unix";}/////////////////////////////////////////////////////////////////////////const char*unixEndpoint::address() const {  return pd_address_string;}/////////////////////////////////////////////////////////////////////////CORBA::BooleanunixEndpoint::Bind() {  OMNIORB_ASSERT(pd_socket == RC_INVALID_SOCKET);  if ((pd_socket = socket(AF_LOCAL,SOCK_STREAM,0)) == RC_INVALID_SOCKET) {    return 0;  }  unlink(pd_filename);  SocketSetCloseOnExec(pd_socket);  struct sockaddr_un addr;  memset((void*)&addr,0,sizeof(addr));  addr.sun_family = AF_LOCAL;  strncpy(addr.sun_path, pd_filename, sizeof(addr.sun_path) - 1);  if (::bind(pd_socket,(struct sockaddr *)&addr,	               sizeof(addr)) == RC_SOCKET_ERROR) {    CLOSESOCKET(pd_socket);    return 0;  }  if (::chmod(pd_filename,orbParameters::unixTransportPermission & 0777) < 0) {    if (omniORB::trace(1)) {      omniORB::logger log;      log << "Error: cannot change permission of " << pd_filename	  << " to " << (orbParameters::unixTransportPermission & 0777) << "\n";    }    CLOSESOCKET(pd_socket);    return 0;  }  if (listen(pd_socket,5) == RC_SOCKET_ERROR) {    CLOSESOCKET(pd_socket);    return 0;  }  pd_address_string = unixConnection::unToString(pd_filename);  return 1;}/////////////////////////////////////////////////////////////////////////voidunixEndpoint::Poke() {  unixAddress* target = new unixAddress(pd_filename);  giopActiveConnection* conn;  if ((conn = target->Connect()) == 0) {    if (omniORB::trace(1)) {      omniORB::logger log;      log << "Warning: Fail to connect to myself ("	  << (const char*) pd_address_string << ") via tcp!\n";      log << "Warning: This is ignored but this may cause the ORB shutdown to hang.\n";    }  }  else {    delete conn;  }  delete target;}/////////////////////////////////////////////////////////////////////////voidunixEndpoint::Shutdown() {  SHUTDOWNSOCKET(pd_socket);  decrRefCount();  omniORB::logs(20, "Unix endpoint shut down.");}/////////////////////////////////////////////////////////////////////////giopConnection*unixEndpoint::AcceptAndMonitor(giopConnection::notifyReadable_t func,			      void* cookie) {  OMNIORB_ASSERT(pd_socket != RC_INVALID_SOCKET);  pd_callback_func = func;  pd_callback_cookie = cookie;  setSelectable(pd_socket,1,0,0);  while (1) {    pd_new_conn_socket = RC_INVALID_SOCKET;    if (!Select()) break;    if (pd_new_conn_socket != RC_INVALID_SOCKET) {      return  new unixConnection(pd_new_conn_socket,this,pd_filename,0);    }  }  return 0;}/////////////////////////////////////////////////////////////////////////CORBA::BooleanunixEndpoint::notifyReadable(SocketHandle_t fd) {  if (fd == pd_socket) {    // New connection    SocketHandle_t sock;again:    sock = ::accept(pd_socket,0,0);    if (sock == RC_SOCKET_ERROR) {      if (ERRNO == RC_EBADF) {        omniORB::logs(20, "accept() returned EBADF, unable to continue");        return 0;      }      else if (ERRNO == RC_EINTR) {        omniORB::logs(20, "accept() returned EINTR, trying again");        goto again;      }      else if (ERRNO == RC_EAGAIN) {        omniORB::logs(20, "accept() returned EAGAIN, trying again");        goto again;      }      if (omniORB::trace(20)) {        omniORB::logger log;        log << "accept() failed with unknown error " << ERRNO << "\n";      }    }    else {      pd_new_conn_socket = sock;    }    setSelectable(pd_socket,1,0,1);    return 1;  }  else {    // Existing connection    SocketLink* conn = findSocket(fd,1);    if (conn) {      pd_callback_func(pd_callback_cookie,(unixConnection*)conn);    }    return 1;  }}OMNI_NAMESPACE_END(omni)

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区中文字幕电影| 一道本成人在线| 17c精品麻豆一区二区免费| 欧美日韩中文字幕一区| 国产成人精品影视| 日韩专区一卡二卡| 亚洲人亚洲人成电影网站色| 久久亚洲二区三区| 日韩一区二区三区免费看| 97精品国产97久久久久久久久久久久 | 久久免费看少妇高潮| 在线免费精品视频| 成人免费三级在线| 狠狠色丁香九九婷婷综合五月| 亚洲国产日韩a在线播放| 国产精品久久久久久久蜜臀| 精品国产污网站| 欧美精品在线观看一区二区| 91在线观看一区二区| 国产99久久久国产精品潘金 | 日韩和欧美一区二区三区| 国产精品麻豆一区二区| 日韩欧美一二三四区| 欧美精选在线播放| 欧美色综合久久| 色哟哟亚洲精品| 色婷婷综合久久久中文字幕| 成人免费看视频| 国产 欧美在线| 国产精品夜夜嗨| 狠狠久久亚洲欧美| 狠狠色狠狠色合久久伊人| 奇米亚洲午夜久久精品| 三级一区在线视频先锋 | 国产精品久久久久一区二区三区共| eeuss国产一区二区三区| 国产成人8x视频一区二区| 国产精品一区二区视频| 国产精品88av| 国产精品一区在线观看乱码| 九九精品一区二区| 国产精品一区二区免费不卡| 国产一区二区三区免费观看| 国产成人精品免费| 美日韩一级片在线观看| 欧美三级中文字幕| 国产午夜亚洲精品理论片色戒 | 久久99精品久久久久久国产越南| 在线精品视频免费播放| 免费日本视频一区| 国产亚洲人成网站| 欧美一级黄色大片| 色成人在线视频| 国产一区二区三区av电影 | 成+人+亚洲+综合天堂| 免费观看在线色综合| 亚洲精品成人少妇| 欧美国产日本韩| 精品少妇一区二区三区在线播放| 97精品久久久午夜一区二区三区| 狠狠色丁香久久婷婷综合丁香| 亚洲国产精品久久久久秋霞影院| 亚洲国产电影在线观看| 精品区一区二区| 91精品国产色综合久久不卡电影| 精品国产乱码久久久久久老虎| 欧美日韩国产首页| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 久久精品国产成人一区二区三区| 美女一区二区在线观看| 成人午夜视频网站| 色综合天天狠狠| 日韩一区二区三区电影| 亚洲成人一区二区| 久久久精品天堂| 中文字幕一区二区三区av | www久久久久| 欧美国产日产图区| 亚洲裸体xxx| 青青草91视频| 97久久精品人人做人人爽50路 | 欧美日韩一区在线| xnxx国产精品| 亚洲精品国产a久久久久久| 美国十次了思思久久精品导航| 国产精品99久久久久久似苏梦涵| 日本高清不卡一区| 久久婷婷一区二区三区| 伊人夜夜躁av伊人久久| 国产综合色视频| 欧美无人高清视频在线观看| 国产亚洲欧美在线| 日韩中文欧美在线| av激情亚洲男人天堂| 欧美一区二区三区视频免费| 亚洲激情在线播放| 国产一区二区久久| 欧美日韩精品一区二区三区四区 | 亚洲色欲色欲www| 激情欧美日韩一区二区| 欧美日韩一区在线观看| 国产精品久久精品日日| 久久精品av麻豆的观看方式| 91激情在线视频| 中文久久乱码一区二区| 麻豆中文一区二区| 欧美午夜一区二区三区| 国产精品白丝在线| 国产资源在线一区| 欧美福利一区二区| 一区二区三区国产| av一区二区不卡| 日本一区二区动态图| 久久成人羞羞网站| 337p亚洲精品色噜噜噜| 一区二区三区四区精品在线视频| 成人性色生活片| 国产欧美一区二区三区在线老狼| 麻豆精品国产传媒mv男同 | 国产精品久久久久7777按摩| 国产毛片精品视频| 亚洲精品一区在线观看| 麻豆91精品91久久久的内涵| 欧美卡1卡2卡| 午夜国产精品影院在线观看| 欧洲亚洲精品在线| 亚洲一区成人在线| 欧美亚洲国产bt| 一区二区不卡在线播放 | 国产精品18久久久久久久久久久久| 欧美日韩高清一区二区| 亚洲综合激情另类小说区| 色婷婷久久久亚洲一区二区三区| 中文字幕一区日韩精品欧美| 成人激情电影免费在线观看| 国产精品毛片大码女人| 97成人超碰视| 一区二区成人在线| 欧美精品在线一区二区| 青草国产精品久久久久久| 欧美一级一区二区| 另类中文字幕网| 精品欧美乱码久久久久久| 精品一区二区三区视频| 亚洲精品在线免费播放| 国产91丝袜在线播放0| 国产精品污网站| 99r国产精品| 亚洲国产精品久久不卡毛片 | caoporn国产一区二区| 亚洲视频图片小说| 欧美日韩中文字幕一区| 美女国产一区二区三区| 国产日韩欧美高清| 色8久久人人97超碰香蕉987| 亚洲h在线观看| 欧美刺激脚交jootjob| 国产精品一区在线| 亚洲精品久久7777| 欧美一级片在线看| 国产精品白丝av| 亚洲欧美乱综合| 欧美日韩情趣电影| 日韩av一区二区在线影视| 亚洲精品一区二区三区福利| 不卡视频在线观看| 亚洲va天堂va国产va久| 精品电影一区二区| 91丨porny丨户外露出| 日韩国产欧美三级| 国产视频在线观看一区二区三区| 91香蕉视频黄| 美女视频黄 久久| 亚洲欧洲精品一区二区三区| 欧美色精品在线视频| 国产尤物一区二区在线| 亚洲乱码国产乱码精品精98午夜| 日韩一区二区电影在线| 成人毛片视频在线观看| 亚洲电影你懂得| 久久久久久久久久久久电影 | 亚洲激情网站免费观看| 日韩精品一区二区三区视频播放 | 欧美裸体一区二区三区| 国产成人精品一区二区三区四区 | 成人国产在线观看| 日韩精品一卡二卡三卡四卡无卡| 国产欧美一区二区精品久导航 | 日日摸夜夜添夜夜添亚洲女人| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 国产精品毛片久久久久久| 欧美精品三级日韩久久| 成人高清av在线| 老汉av免费一区二区三区| 亚洲免费av网站| 久久―日本道色综合久久| 欧美日韩成人综合在线一区二区| 国产999精品久久久久久| 久久精品国产免费| 亚洲影院免费观看|