Waiting for data...
\r\n"
+ "\r\n";
+
+ sprintf(Page, WebSockPage, Key, Key ,BBSName, Session->User->Call, Key, Key, Key, Key, Key, Key, Key, Key);
+
+ *RLen = sprintf(Reply, "%s", Page);
+ return;
+ }
+
+
if (memcmp(NodeURL, "/WebMail/QuoteOriginal/", 15) == 0)
{
// Reply to Message
@@ -2657,7 +2753,6 @@ VOID SaveNewMessage(struct HTTPConnectionInfo * Session, char * MsgPtr, char * R
BuildNNTPList(Msg); // Build NNTP Groups list
-
if (EnableUI)
SendMsgUI(Msg);
@@ -5959,5 +6054,118 @@ char * WebFindPart(char ** Msg, char * Boundary, int * PartLen, char * End)
}
+int ProcessWebmailWebSock(char * MsgPtr, char * OutBuffer)
+{
+ int Len = 129;
+ char * Key = strlop(MsgPtr, '&');
+
+ struct HTTPConnectionInfo * Session;
+ struct UserInfo * User;
+ int m;
+ struct MsgInfo * Msg;
+ char * ptr = &OutBuffer[4];
+
+ int n = NumberofMessages;
+ char Via[64];
+ int Count = 0;
+
+ if (Key == 0)
+ return 0;
+
+ Session = FindWMSession(Key);
+
+ if (Session == NULL)
+ return 0;
+
+ User = Session->User;
+
+ // Outbuffer is 250000
+
+// ptr += sprintf(ptr, "\r\n"
+ ptr += sprintf(ptr, "
");
+
+ ptr += sprintf(ptr, "%s", " # Date XX Len To @ From Subject\r\n\r\n");
+
+ for (m = LatestMsg; m >= 1; m--)
+ {
+ if (ptr > &OutBuffer[244000])
+ break; // protect buffer
+
+ Msg = GetMsgFromNumber(m);
+
+ if (Msg == 0 || Msg->type == 0 || Msg->status == 0)
+ continue; // Protect against corrupt messages
+
+ if (Msg && CheckUserMsg(Msg, User->Call, User->flags & F_SYSOP))
+ {
+ char UTF8Title[128];
+ char * EncodedTitle;
+
+ // List if it is the right type and in the page range we want
+
+ if (Session->WebMailTypes[0] && strchr(Session->WebMailTypes, Msg->type) == 0)
+ continue;
+
+ // All Types or right Type. Check Mine Flag
+
+ if (Session->WebMailMine)
+ {
+ // Only list if to or from me
+
+ if (strcmp(User->Call, Msg->to) != 0 && strcmp(User->Call, Msg->from) != 0)
+ continue;
+ }
+
+ if (Count++ < Session->WebMailSkip)
+ continue;
+
+ strcpy(Via, Msg->via);
+ strlop(Via, '.');
+
+ // make sure title is HTML safe (no < > etc) and UTF 8 encoded
+
+ EncodedTitle = doXMLTransparency(Msg->title);
+
+ ConvertTitletoUTF8(EncodedTitle, UTF8Title);
+
+ free(EncodedTitle);
+
+ ptr += sprintf(ptr, "%6d %s %c%c %5d %-8s%-8s%-8s%s\r\n",
+ Key, Msg->number, Msg->number,
+ FormatDateAndTime((time_t)Msg->datecreated, TRUE), Msg->type,
+ Msg->status, Msg->length, Msg->to, Via,
+ Msg->from, UTF8Title);
+
+ n--;
+
+ if (n == 0)
+ break;
+ }
+ }
+
+ ptr += sprintf(ptr, "%s
\r\n", ptr);
+
+ Len = ptr - &OutBuffer[4];
+
+ OutBuffer[0] = 0x81; // Fin, Data
+
+ if (Len < 126)
+ {
+ OutBuffer[1] = Len;
+ memmove(&OutBuffer[2], &OutBuffer[4], Len);
+ return Len + 2;
+ }
+ else
+ {
+ OutBuffer[1] = 126; // Unmasked, Extended Len
+ OutBuffer[2] = Len >> 8;
+ OutBuffer[3] = Len & 0xff;
+
+ return Len + 4;
+ }
+
+}
+
+
diff --git a/WinmorControl.vcproj.SKIGACER.johnw.user b/WinmorControl.vcproj.SKIGACER.johnw.user
new file mode 100644
index 0000000..bbece07
--- /dev/null
+++ b/WinmorControl.vcproj.SKIGACER.johnw.user
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/configure.scan b/configure.scan
deleted file mode 100644
index e3b787d..0000000
--- a/configure.scan
+++ /dev/null
@@ -1,53 +0,0 @@
-# -*- Autoconf -*-
-# Process this file with autoconf to produce a configure script.
-
-AC_PREREQ([2.69])
-AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])
-AC_CONFIG_SRCDIR([AEAPactor.c])
-AC_CONFIG_HEADERS([config.h])
-
-# Checks for programs.
-AC_PROG_CXX
-AC_PROG_CC
-
-# Checks for libraries.
-# FIXME: Replace `main' with a function in `-lconfig':
-AC_CHECK_LIB([config], [main])
-# FIXME: Replace `main' with a function in `-lm':
-AC_CHECK_LIB([m], [main])
-# FIXME: Replace `main' with a function in `-lpcap':
-AC_CHECK_LIB([pcap], [main])
-# FIXME: Replace `main' with a function in `-lpthread':
-AC_CHECK_LIB([pthread], [main])
-# FIXME: Replace `main' with a function in `-lrt':
-AC_CHECK_LIB([rt], [main])
-
-# Checks for header files.
-AC_PATH_X
-AC_CHECK_HEADERS([arpa/inet.h fcntl.h malloc.h netdb.h netinet/in.h stddef.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h syslog.h termios.h unistd.h wchar.h])
-
-# Checks for typedefs, structures, and compiler characteristics.
-AC_CHECK_HEADER_STDBOOL
-AC_C_INLINE
-AC_TYPE_INT16_T
-AC_TYPE_INT32_T
-AC_TYPE_INT64_T
-AC_TYPE_INT8_T
-AC_TYPE_PID_T
-AC_TYPE_SIZE_T
-AC_TYPE_UINT16_T
-AC_TYPE_UINT32_T
-AC_TYPE_UINT64_T
-AC_TYPE_UINT8_T
-AC_CHECK_TYPES([ptrdiff_t])
-
-# Checks for library functions.
-AC_FUNC_FORK
-AC_FUNC_MALLOC
-AC_FUNC_MKTIME
-AC_FUNC_MMAP
-AC_FUNC_REALLOC
-AC_CHECK_FUNCS([bzero clock_gettime floor ftruncate getcwd gethostbyaddr gethostbyname gethostname inet_ntoa memchr memmove memset mkdir munmap pow select socket strchr strrchr strstr strtol])
-
-AC_CONFIG_FILES([makefile])
-AC_OUTPUT
diff --git a/httpconnectioninfo.h b/httpconnectioninfo.h
index 081a855..8ad1b37 100644
--- a/httpconnectioninfo.h
+++ b/httpconnectioninfo.h
@@ -2,7 +2,7 @@
// HTTP Session Control. Used In Kernel HTTPCode, BBSHTMLConfig
// and ChatHTMLConfig
-// On Windows ghanges to layout or length of this struct require rebuilding BPQ32.dll, BPQMail and BPQChat
+// On Windows changes to layout or length of this struct require rebuilding BPQ32.dll, BPQMail and BPQChat
struct HTTPConnectionInfo // Used for Web Server for thread-specific stuff
{
diff --git a/telnetserver.h b/telnetserver.h
index a665298..072f14c 100644
--- a/telnetserver.h
+++ b/telnetserver.h
@@ -68,7 +68,7 @@ struct ConnectionInfo
struct ADIF * ADIF; // ADIF Logging info
int WebSocks;
- char WebURL[16]; // URL for WebSocket Connection
+ char WebURL[32]; // URL for WebSocket Connection
int WebSecure; // Set if secure session
};
diff --git a/templatedefs.c b/templatedefs.c
index 14dfe64..14061f6 100644
--- a/templatedefs.c
+++ b/templatedefs.c
@@ -394,6 +394,7 @@ char * WebMailPagetxt()
"
NTS | \r\n"
"
All Types | \r\n"
"
Mine | \r\n"
+ "
Auto Refresh | \r\n"
"
Send Message | \r\n"
"
Logout | \r\n"
"
Node Menu | \r\n"