summaryrefslogtreecommitdiff
path: root/plugins/HTTPServer/src/Glob.h
blob: 15d5636943f9e8103f360b9387dae54d8ac4d02e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
//This file is part of HTTPServer a Miranda IM plugin
//Copyright (C)2002 Kennet Nielsen
//
//This program is free software; you can redistribute it and/or
//modify it under the terms of the GNU General Public License
//as published by the Free Software Foundation; either
//version 2 of the License, or (at your option) any later version.
//
//This program 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 General Public License for more details.
//
//You should have received a copy of the GNU General Public License
//along with this program; if not, write to the Free Software
//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

#ifndef HTTP_SERVER_GLOB_H
#define HTTP_SERVER_GLOB_H

#define _CRT_SECURE_NO_DEPRECATE

#include <windows.h>
#include <windowsx.h>
#include <commctrl.h>
#include <time.h>
#include <string>
using namespace std;

#include <newpluginapi.h>
#include <m_database.h>
#include <m_clistint.h>
#include <m_langpack.h>
#include <m_userinfo.h>
#include <m_netlib.h>
#include <m_message.h>
#include <m_popup.h>
#include <m_protosvc.h>

#include <m_HTTPServer.h>

#include "FileShareNode.h"
#include "HttpUser.h"
#include "GuiElements.h"
#include "MimeHandling.h"
#include "resource.h"
#include "IndexCreation.h"
#include "version.h"


#define SD_RECEIVE      0x00
#define SD_SEND         0x01
#define SD_BOTH         0x02

#define MODULENAME "HTTPServer"
#define MSG_BOX_TITLE "Miranda NG HTTP-Server"

#define SplitIpAddress( p ) (uint8_t)(p>>24),(uint8_t)(p>>16),(uint8_t)(p>>8),(uint8_t)(p)

struct CMPlugin : public PLUGIN<CMPlugin>
{
	CMPlugin();

	int Load() override;
	int Unload() override;
};

extern HNETLIBUSER hNetlibUser;

extern bool bShutdownInProgress;
bool bWriteConfigurationFile();

void LogEvent(const char * pszTitle, const char * pszLog);
bool bOpenLogFile();

extern char szPluginPath[MAX_PATH];
extern int nPluginPathLen;

extern uint32_t dwLocalIpAddress;
extern uint32_t dwLocalPortUsed;
extern uint32_t dwExternalIpAddress;

extern int nMaxUploadSpeed;
extern int nMaxConnectionsTotal;
extern int nMaxConnectionsPerUser;
extern int nDefaultDownloadLimit;
extern bool bIsOnline;
extern bool bLimitOnlyWhenOnline;

extern void* (*MirandaMalloc)(size_t);
extern void(*MirandaFree)(void*);

#endif