X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/e8fa8f62da443bfc89c416d3eeafcde69c8c6403..3d88e64dfcf5dc0fd361ce0c504c67a9196ce44c:/raw.c diff --git a/raw.c b/raw.c index 94ff43f1..53a8fc3a 100644 --- a/raw.c +++ b/raw.c @@ -80,7 +80,7 @@ static char *raw_init(void *frontend_handle, void **backend_handle, char *err; Raw raw; - raw = smalloc(sizeof(*raw)); + raw = snew(struct raw_backend_data); raw->fn = &fn_table; raw->s = NULL; *backend_handle = raw; @@ -123,6 +123,15 @@ static char *raw_init(void *frontend_handle, void **backend_handle, return NULL; } +static void raw_free(void *handle) +{ + Raw raw = (Raw) handle; + + if (raw->s) + sk_close(raw->s); + sfree(raw); +} + /* * Stub routine (we don't have any need to reconfigure this backend). */ @@ -214,6 +223,7 @@ static int raw_exitcode(void *handle) Backend raw_backend = { raw_init, + raw_free, raw_reconfig, raw_send, raw_sendbuffer,