[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [tor/master] Move DLL support to lib/fs
commit 02bb701bba5fb6b5eb6ce5716b8fff9fd2c5e028
Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date: Thu Jun 28 13:37:51 2018 -0400
Move DLL support to lib/fs
---
src/common/util.c | 15 ---------------
src/common/util.h | 5 +----
src/lib/fs/include.am | 7 ++++++-
src/lib/fs/winlib.c | 21 +++++++++++++++++++++
src/lib/fs/winlib.h | 16 ++++++++++++++++
5 files changed, 44 insertions(+), 20 deletions(-)
diff --git a/src/common/util.c b/src/common/util.c
index b31bb834e..135af77c6 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -134,18 +134,3 @@ ENABLE_GCC_WARNING(aggregate-return)
/* =====
* Time
* ===== */
-
-#ifdef _WIN32
-HANDLE
-load_windows_system_library(const TCHAR *library_name)
-{
- TCHAR path[MAX_PATH];
- unsigned n;
- n = GetSystemDirectory(path, MAX_PATH);
- if (n == 0 || n + _tcslen(library_name) + 2 >= MAX_PATH)
- return 0;
- _tcscat(path, TEXT("\\"));
- _tcscat(path, library_name);
- return LoadLibrary(path);
-}
-#endif /* defined(_WIN32) */
diff --git a/src/common/util.h b/src/common/util.h
index f174cd366..ffd958c42 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -40,6 +40,7 @@
#include "lib/fs/path.h"
#include "lib/encoding/time_fmt.h"
#include "lib/encoding/cstring.h"
+#include "lib/fs/winlib.h"
void tor_log_mallinfo(int severity);
@@ -76,8 +77,4 @@ void tor_log_mallinfo(int severity);
((isSock) ? read_all_from_socket((fd), (buf), (count)) \
: read_all_from_fd((int)(fd), (buf), (count)))
-#ifdef _WIN32
-HANDLE load_windows_system_library(const TCHAR *library_name);
-#endif
-
#endif /* !defined(TOR_UTIL_H) */
diff --git a/src/lib/fs/include.am b/src/lib/fs/include.am
index 0256c0f2f..a025eb81c 100644
--- a/src/lib/fs/include.am
+++ b/src/lib/fs/include.am
@@ -15,6 +15,10 @@ src_lib_libtor_fs_a_SOURCES = \
src/lib/fs/storagedir.c \
src/lib/fs/userdb.c
+if WIN32
+src_lib_libtor_fs_a_SOURCES += src/lib/fs/winlib.c
+endif
+
src_lib_libtor_fs_testing_a_SOURCES = \
$(src_lib_libtor_fs_a_SOURCES)
src_lib_libtor_fs_testing_a_CPPFLAGS = $(AM_CPPFLAGS) $(TEST_CPPFLAGS)
@@ -28,4 +32,5 @@ noinst_HEADERS += \
src/lib/fs/mmap.h \
src/lib/fs/path.h \
src/lib/fs/storagedir.h \
- src/lib/fs/userdb.h
+ src/lib/fs/userdb.h \
+ src/lib/fs/winlib.h
diff --git a/src/lib/fs/winlib.c b/src/lib/fs/winlib.c
new file mode 100644
index 000000000..7a88a841a
--- /dev/null
+++ b/src/lib/fs/winlib.c
@@ -0,0 +1,21 @@
+/* Copyright (c) 2003, Roger Dingledine
+ * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
+ * Copyright (c) 2007-2018, The Tor Project, Inc. */
+/* See LICENSE for licensing information */
+
+#ifdef _WIN32
+#include "lib/fs/winlib.h"
+
+HANDLE
+load_windows_system_library(const TCHAR *library_name)
+{
+ TCHAR path[MAX_PATH];
+ unsigned n;
+ n = GetSystemDirectory(path, MAX_PATH);
+ if (n == 0 || n + _tcslen(library_name) + 2 >= MAX_PATH)
+ return 0;
+ _tcscat(path, TEXT("\\"));
+ _tcscat(path, library_name);
+ return LoadLibrary(path);
+}
+#endif /* defined(_WIN32) */
diff --git a/src/lib/fs/winlib.h b/src/lib/fs/winlib.h
new file mode 100644
index 000000000..f53f04645
--- /dev/null
+++ b/src/lib/fs/winlib.h
@@ -0,0 +1,16 @@
+/* Copyright (c) 2003, Roger Dingledine
+ * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
+ * Copyright (c) 2007-2018, The Tor Project, Inc. */
+/* See LICENSE for licensing information */
+
+#ifndef TOR_WINLIB_H
+#define TOR_WINLIB_H
+
+#ifdef _WIN32
+#include <windows.h>
+#include <tchar.h>
+
+HANDLE load_windows_system_library(const TCHAR *library_name);
+#endif
+
+#endif
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits