diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2007-10-15 11:49:28 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2007-10-15 11:49:28 +0000 |
commit | 9d639f7b55dfb141a7fcb9229b2dd8465a8f7177 (patch) | |
tree | e0a433e6736a6f106cdab56c21e7c44ac476b134 /sal/osl/w32 | |
parent | 86b2f7b4c0d884381472081550af28ff6c6c271d (diff) |
INTEGRATION: CWS sb71 (1.1.2); FILE ADDED
2007/08/23 07:54:45 sb 1.1.2.2: #i77184# Cleaned up sal_[de]initialize.
2007/08/22 14:40:13 hro 1.1.2.1: #i77184# sal_initzialize and sal_deinitialize needed for Winsock initialization
Diffstat (limited to 'sal/osl/w32')
-rw-r--r-- | sal/osl/w32/salinit.cxx | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/sal/osl/w32/salinit.cxx b/sal/osl/w32/salinit.cxx new file mode 100644 index 000000000..2660501fd --- /dev/null +++ b/sal/osl/w32/salinit.cxx @@ -0,0 +1,95 @@ +/************************************************************************* + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: salinit.cxx,v $ + * + * $Revision: 1.2 $ + * + * last change: $Author: vg $ $Date: 2007-10-15 12:49:28 $ + * + * The Contents of this file are made available subject to + * the terms of GNU Lesser General Public License Version 2.1. + * + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2005 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser 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 + * + ************************************************************************/ + +// MARKER(update_precomp.py): autogen include statement, do not remove +#include "precompiled_sal.hxx" + +#include "system.h" + +#ifndef _OSL_PROCESS_H_ +#include <osl/process.h> +#endif +#ifndef _SAL_TYPES_H_ +#include <sal/types.h> +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +// Prototypes for initialization and deinitialization of SAL library + +void SAL_CALL sal_detail_initialize(int argc, char ** argv) +{ + WSADATA wsaData; + int error; + WORD wVersionRequested; + + wVersionRequested = MAKEWORD(1, 1); + + error = WSAStartup(wVersionRequested, &wsaData); + if ( 0 == error ) + { + WORD wMajorVersionRequired = 1; + WORD wMinorVersionRequired = 1; + + if ((LOBYTE(wsaData.wVersion) < wMajorVersionRequired) || + (LOBYTE(wsaData.wVersion) == wMajorVersionRequired) && + ((HIBYTE(wsaData.wVersion) < wMinorVersionRequired))) + { + // How to handle a very unlikely error ??? + } + } + else + { + // How to handle a very unlikely error ??? + } + + osl_setCommandArgs(argc, argv); +} + +void SAL_CALL sal_detail_deinitialize() +{ + if ( SOCKET_ERROR == WSACleanup() ) + { + // We should never reach this point or we did wrong elsewhere + } +} + + + +#ifdef __cplusplus +} // extern "C" +#endif |