2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-09-05 17:15:31 +00:00
Files
bind/lib/isc/win32/DLLMain.c

55 lines
1.1 KiB
C
Raw Normal View History

2001-07-06 05:20:33 +00:00
/*
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
2001-07-06 05:20:33 +00:00
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, you can obtain one at https://mozilla.org/MPL/2.0/.
*
* See the COPYRIGHT file distributed with this work for additional
* information regarding copyright ownership.
2001-07-06 05:20:33 +00:00
*/
#include <stdio.h>
#include <windows.h>
2001-07-06 05:20:33 +00:00
#include <isc/mem.h>
#include <isc/tls.h>
#include <isc/util.h>
#include "mem_p.h"
#include "tls_p.h"
2001-07-06 05:20:33 +00:00
/*
* Called when we enter the DLL
*/
__declspec(dllexport) BOOL WINAPI
2020-02-13 14:44:37 -08:00
DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
switch (fdwReason) {
2001-07-08 05:09:35 +00:00
/*
* The DLL is loading due to process initialization or a call to
* LoadLibrary.
2001-07-08 05:09:35 +00:00
*/
case DLL_PROCESS_ATTACH:
isc__mem_initialize();
isc__tls_initialize();
break;
2001-07-08 05:09:35 +00:00
/*
* The DLL is unloading from a process due to process
* termination or a call to FreeLibrary.
2001-07-08 05:09:35 +00:00
*/
case DLL_PROCESS_DETACH:
isc__tls_shutdown();
isc__mem_shutdown();
break;
2001-07-06 05:20:33 +00:00
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
break;
default:
break;
}
2001-07-17 19:17:02 +00:00
return (TRUE);
2001-07-06 05:20:33 +00:00
}