1 /***********************************************************************
3 * This software is part of the ast package *
4 * Copyright (c) 1985-2010 AT&T Intellectual Property *
5 * and is licensed under the *
6 * Common Public License, Version 1.0 *
7 * by AT&T Intellectual Property *
9 * A copy of the License is available at *
10 * http://www.opensource.org/licenses/cpl1.0.txt *
11 * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
13 * Information and Software Systems Research *
17 * Glenn Fowler <gsf@research.att.com> *
18 * David Korn <dgk@research.att.com> *
19 * Phong Vo <kpv@research.att.com> *
21 ***********************************************************************/
25 * ast dynamic data initialization
30 #define _std_def_cfree 1
37 #include <ast_windows.h>
39 extern Sfio_t _Sfstdin
;
40 extern Sfio_t _Sfstdout
;
41 extern Sfio_t _Sfstderr
;
49 #if defined(__EXPORT__)
50 #define extern __EXPORT__
54 * for backward compatibility with early UNIX
64 _ast_libinit(void* in
, void* out
, void* err
)
82 struct _astdll
* ap
= _ast_getdll();
84 _ast_libinit(ap
->_ast_stdin
,ap
->_ast_stdout
,ap
->_ast_stderr
);
95 DllMain(HINSTANCE hinst
, DWORD reason
, VOID
* reserved
)
99 case DLL_PROCESS_ATTACH
:
101 case DLL_PROCESS_DETACH
:
112 #if _dll_data_intercept && ( _DLL_BLD || _BLD_DLL )
116 extern char** environ
;
118 struct _astdll _ast_dll
= { &environ
};