#include <windows.h>
#include <winsock.h>
#include <stdio.h>
+#include <stdlib.h>
#include "putty.h"
#include "network.h"
unsigned long a;
struct hostent *h;
+ ret->error = NULL;
if ( (a = inet_addr(host)) == (unsigned long) INADDR_NONE) {
if ( (h = gethostbyname(host)) == NULL) {
DWORD err = WSAGetLastError();
err == WSATRY_AGAIN ? "Host not found" :
"gethostbyname: unknown error");
} else {
- ret->error = NULL;
memcpy (&a, h->h_addr, sizeof(a));
*canonicalname = h->h_name;
}
del234(sktree, s);
do_select(s->s, 0);
closesocket(s->s);
- free(s);
+ sfree(s);
}
char *winsock_error_string(int error) {
}
nsent = send(s->s, s->head->buf + s->head->bufpos, len, urgentflag);
+ noise_ultralight(nsent);
if (nsent <= 0) {
err = (nsent < 0 ? WSAGetLastError() : 0);
if (err == WSAEWOULDBLOCK) {
if (s->head->bufpos >= s->head->buflen) {
struct buffer *tmp = s->head;
s->head = tmp->next;
- free(tmp);
+ sfree(tmp);
if (!s->head)
s->tail = NULL;
}
while (walk) {
struct buffer *tmp = walk;
walk = tmp->next;
- free(tmp);
+ sfree(tmp);
}
}
s->head->next = NULL;
DWORD err;
char buf[BUFFER_GRANULE];
Socket s;
- int atmark;
+ u_long atmark;
/* wParam is the socket itself */
s = find234(sktree, (void *)wParam, cmpforsearch);
fatalbox(winsock_error_string(err));
}
+ noise_ultralight(lParam);
+
switch (WSAGETSELECTEVENT(lParam)) {
case FD_READ:
ret = recv(s->s, buf, sizeof(buf), 0);
* which is good enough to keep going at least. */
ioctlsocket(s->s, SIOCATMARK, &atmark);
ret = recv(s->s, buf, sizeof(buf), MSG_OOB);
+ noise_ultralight(ret);
if (ret <= 0) {
fatalbox(ret == 0 ? "Internal networking trouble" :
winsock_error_string(WSAGetLastError()));