From 5d896b8465621f0663ea837f35abbcc4c54a0cc9 Mon Sep 17 00:00:00 2001
From: Claudiu Olteanu <olteanu.claudiu@ymail.com>
Date: Thu, 13 Aug 2015 01:38:03 +0300
Subject: [PATCH 1/3] Add set_timeout callback for serial custom implementation

The new callback will be usefull when we will implement the support
for Windows. The implementation of native serial set_timeout method
uses a HANDLER on Windows and we will use the WinSock2 API which has
a socket descriptor.

Signed-off-by: Claudiu Olteanu <olteanu.claudiu@ymail.com>
---
 include/libdivecomputer/custom_serial.h | 1 +
 src/custom_serial.c                     | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/libdivecomputer/custom_serial.h b/include/libdivecomputer/custom_serial.h
index a52d49b..a27d519 100644
--- a/include/libdivecomputer/custom_serial.h
+++ b/include/libdivecomputer/custom_serial.h
@@ -44,6 +44,7 @@ typedef struct dc_serial_operations_t
 	int (*flush) (serial_t *device, int queue);
 	int (*get_received) (serial_t *device);
 	int (*get_transmitted) (serial_t *device);
+	int (*set_timeout) (serial_t *device, long timeout);
 } dc_serial_operations_t;
 
 typedef struct dc_serial_t {
diff --git a/src/custom_serial.c b/src/custom_serial.c
index 6e024b2..a6af432 100644
--- a/src/custom_serial.c
+++ b/src/custom_serial.c
@@ -32,7 +32,8 @@ const dc_serial_operations_t native_serial_ops = {
 	.write = serial_write,
 	.flush = serial_flush,
 	.get_received = serial_get_received,
-	.get_transmitted = serial_get_transmitted
+	.get_transmitted = serial_get_transmitted,
+	.set_timeout = serial_set_timeout
 };
 
 
-- 
2.4.3

