aboutsummaryrefslogtreecommitdiff
path: root/external/unbound/winrc
diff options
context:
space:
mode:
Diffstat (limited to 'external/unbound/winrc')
-rw-r--r--external/unbound/winrc/combined.icobin10535 -> 10534 bytes
-rw-r--r--external/unbound/winrc/gen_msg.binbin117 -> 116 bytes
-rw-r--r--external/unbound/winrc/setup.nsi19
-rw-r--r--external/unbound/winrc/setup_left.bmpbin154543 -> 154542 bytes
-rw-r--r--external/unbound/winrc/setup_top.bmpbin25819 -> 25818 bytes
-rw-r--r--external/unbound/winrc/unbound-control-setup.cmd2
-rw-r--r--external/unbound/winrc/unbound16.icobin895 -> 894 bytes
-rw-r--r--external/unbound/winrc/unbound32.icobin3263 -> 3262 bytes
-rw-r--r--external/unbound/winrc/unbound48.icobin7359 -> 7358 bytes
-rw-r--r--external/unbound/winrc/unbound64.icobin12863 -> 12862 bytes
-rw-r--r--external/unbound/winrc/unbound64.pngbin6241 -> 6240 bytes
-rw-r--r--external/unbound/winrc/w_inst.c4
-rw-r--r--external/unbound/winrc/win_svc.c16
13 files changed, 28 insertions, 13 deletions
diff --git a/external/unbound/winrc/combined.ico b/external/unbound/winrc/combined.ico
index b0a4f4d16..aa65d11e2 100644
--- a/external/unbound/winrc/combined.ico
+++ b/external/unbound/winrc/combined.ico
Binary files differ
diff --git a/external/unbound/winrc/gen_msg.bin b/external/unbound/winrc/gen_msg.bin
index ed8f79e63..6e560057c 100644
--- a/external/unbound/winrc/gen_msg.bin
+++ b/external/unbound/winrc/gen_msg.bin
Binary files differ
diff --git a/external/unbound/winrc/setup.nsi b/external/unbound/winrc/setup.nsi
index 513b30015..c5d6b2ceb 100644
--- a/external/unbound/winrc/setup.nsi
+++ b/external/unbound/winrc/setup.nsi
@@ -92,10 +92,18 @@ section "-hidden.postinstall"
File "..\anchor-update.exe"
File "unbound-control-setup.cmd"
File "unbound-website.url"
- File "service.conf"
File "..\doc\example.conf"
File "..\doc\Changelog"
+ # Does service.conf already exist?
+ IfFileExists "$INSTDIR\service.conf" 0 service_conf_not_found
+ # if so, leave it be and place the shipped file under another name
+ File /oname=service.conf.shipped "service.conf"
+ goto end_service_conf_not_found
+ # or, it is not there, place it and fill it.
+ service_conf_not_found:
+ File "service.conf"
+
# Store Root Key choice
SectionGetFlags ${SectionRootKey} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
@@ -111,6 +119,7 @@ section "-hidden.postinstall"
${Else}
WriteRegStr HKLM "Software\Unbound" "RootAnchor" ""
${EndIf}
+ end_service_conf_not_found:
# store installation folder
WriteRegStr HKLM "Software\Unbound" "InstallLocation" "$INSTDIR"
@@ -139,8 +148,10 @@ section "-hidden.postinstall"
# install service entry
nsExec::ExecToLog '"$INSTDIR\unbound-service-install.exe"'
+ Pop $0 # return value/error/timeout
# start unbound service
nsExec::ExecToLog '"$INSTDIR\unbound-service-install.exe" start'
+ Pop $0 # return value/error/timeout
sectionEnd
# set section descriptions
@@ -162,8 +173,10 @@ LangString DESC_rootkey ${LANG_ENGLISH} "Set up to use the DNSSEC root trust anc
section "un.Unbound"
# stop unbound service
nsExec::ExecToLog '"$INSTDIR\unbound-service-remove.exe" stop'
+ Pop $0 # return value/error/timeout
# uninstall service entry
nsExec::ExecToLog '"$INSTDIR\unbound-service-remove.exe"'
+ Pop $0 # return value/error/timeout
# deregister uninstall
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Unbound"
Delete "$INSTDIR\uninst.exe" # delete self
@@ -179,7 +192,9 @@ section "un.Unbound"
Delete "$INSTDIR\anchor-update.exe"
Delete "$INSTDIR\unbound-control-setup.cmd"
Delete "$INSTDIR\unbound-website.url"
- Delete "$INSTDIR\service.conf"
+ # keep the service.conf with potential local modifications
+ #Delete "$INSTDIR\service.conf"
+ Delete "$INSTDIR\service.conf.shipped"
Delete "$INSTDIR\example.conf"
Delete "$INSTDIR\Changelog"
Delete "$INSTDIR\root.key"
diff --git a/external/unbound/winrc/setup_left.bmp b/external/unbound/winrc/setup_left.bmp
index a013276a9..ddc17d079 100644
--- a/external/unbound/winrc/setup_left.bmp
+++ b/external/unbound/winrc/setup_left.bmp
Binary files differ
diff --git a/external/unbound/winrc/setup_top.bmp b/external/unbound/winrc/setup_top.bmp
index a7404c836..79998ec64 100644
--- a/external/unbound/winrc/setup_top.bmp
+++ b/external/unbound/winrc/setup_top.bmp
Binary files differ
diff --git a/external/unbound/winrc/unbound-control-setup.cmd b/external/unbound/winrc/unbound-control-setup.cmd
index ddf4a06e0..8c283fd5c 100644
--- a/external/unbound/winrc/unbound-control-setup.cmd
+++ b/external/unbound/winrc/unbound-control-setup.cmd
@@ -37,7 +37,7 @@ rem SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
rem settings:
rem directory for files
-set prefix="C:\Program Files (x86)"
+set prefix="C:\Program Files"
set DESTDIR=%prefix%\Unbound
rem issuer and subject name for certificates
diff --git a/external/unbound/winrc/unbound16.ico b/external/unbound/winrc/unbound16.ico
index 06d82e571..e62634b70 100644
--- a/external/unbound/winrc/unbound16.ico
+++ b/external/unbound/winrc/unbound16.ico
Binary files differ
diff --git a/external/unbound/winrc/unbound32.ico b/external/unbound/winrc/unbound32.ico
index 7e5b3a725..64272eed4 100644
--- a/external/unbound/winrc/unbound32.ico
+++ b/external/unbound/winrc/unbound32.ico
Binary files differ
diff --git a/external/unbound/winrc/unbound48.ico b/external/unbound/winrc/unbound48.ico
index cb7291469..074d12ebc 100644
--- a/external/unbound/winrc/unbound48.ico
+++ b/external/unbound/winrc/unbound48.ico
Binary files differ
diff --git a/external/unbound/winrc/unbound64.ico b/external/unbound/winrc/unbound64.ico
index ca2362e5d..c02f68f0a 100644
--- a/external/unbound/winrc/unbound64.ico
+++ b/external/unbound/winrc/unbound64.ico
Binary files differ
diff --git a/external/unbound/winrc/unbound64.png b/external/unbound/winrc/unbound64.png
index 78d831565..b37bf3f11 100644
--- a/external/unbound/winrc/unbound64.png
+++ b/external/unbound/winrc/unbound64.png
Binary files differ
diff --git a/external/unbound/winrc/w_inst.c b/external/unbound/winrc/w_inst.c
index d0de73b5b..023490631 100644
--- a/external/unbound/winrc/w_inst.c
+++ b/external/unbound/winrc/w_inst.c
@@ -231,8 +231,8 @@ wsvc_install(FILE* out, const char* rename)
NULL, /* no load ordering group */
NULL, /* no tag identifier */
NULL, /* no deps */
- NULL, /* on LocalSystem */
- NULL /* no password */
+ NULL, /* on LocalSystem */
+ NULL /* no password */
);
if(!sv) {
CloseServiceHandle(scm);
diff --git a/external/unbound/winrc/win_svc.c b/external/unbound/winrc/win_svc.c
index 9d6926dbe..b755fb543 100644
--- a/external/unbound/winrc/win_svc.c
+++ b/external/unbound/winrc/win_svc.c
@@ -51,7 +51,7 @@
#include "daemon/remote.h"
#include "util/config_file.h"
#include "util/netevent.h"
-#include "util/winsock_event.h"
+#include "util/ub_event.h"
/** global service status */
static SERVICE_STATUS service_status;
@@ -60,7 +60,7 @@ static SERVICE_STATUS_HANDLE service_status_handle;
/** global service stop event */
static WSAEVENT service_stop_event = NULL;
/** event struct for stop callbacks */
-static struct event service_stop_ev;
+static struct ub_event* service_stop_ev = NULL;
/** if stop even means shutdown or restart */
static int service_stop_shutdown = 0;
/** config file to open. global communication to service_main() */
@@ -70,7 +70,7 @@ static int service_cmdline_verbose = 0;
/** the cron callback */
static struct comm_timer* service_cron = NULL;
/** the cron thread */
-static ub_thread_t cron_thread = NULL;
+static ub_thread_type cron_thread = NULL;
/** if cron has already done its quick check */
static int cron_was_quick = 0;
@@ -453,9 +453,9 @@ service_main(DWORD ATTR_UNUSED(argc), LPTSTR* ATTR_UNUSED(argv))
/* exit */
verbose(VERB_ALGO, "winservice - cleanup.");
report_status(SERVICE_STOP_PENDING, NO_ERROR, 0);
+ if(service_stop_event) (void)WSACloseEvent(service_stop_event);
service_deinit(daemon, cfg);
free(service_cfgfile);
- if(service_stop_event) (void)WSACloseEvent(service_stop_event);
verbose(VERB_QUERY, "winservice - full stop");
report_status(SERVICE_STOPPED, NO_ERROR, 0);
}
@@ -565,7 +565,7 @@ win_do_cron(void* ATTR_UNUSED(arg))
/** Set the timer for cron for the next wake up */
static void
-set_cron_timer()
+set_cron_timer(void)
{
struct timeval tv;
int crontime;
@@ -600,9 +600,9 @@ void wsvc_setup_worker(struct worker* worker)
/* if not started with -w service, do nothing */
if(!service_stop_event)
return;
- if(!winsock_register_wsaevent(comm_base_internal(worker->base),
- &service_stop_ev, service_stop_event,
- &worker_win_stop_cb, worker)) {
+ if(!(service_stop_ev = ub_winsock_register_wsaevent(
+ comm_base_internal(worker->base), service_stop_event,
+ &worker_win_stop_cb, worker))) {
fatal_exit("could not register wsaevent");
return;
}