Home | History | Annotate | Download | only in openssh
      1 /* $OpenBSD: roaming.h,v 1.6 2011/12/07 05:44:38 djm Exp $ */
      2 /*
      3  * Copyright (c) 2004-2009 AppGate Network Security AB
      4  *
      5  * Permission to use, copy, modify, and distribute this software for any
      6  * purpose with or without fee is hereby granted, provided that the above
      7  * copyright notice and this permission notice appear in all copies.
      8  *
      9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
     10  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     11  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
     12  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     13  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
     14  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
     15  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     16  */
     17 
     18 #ifndef ROAMING_H
     19 #define ROAMING_H
     20 
     21 #define DEFAULT_ROAMBUF	65536
     22 #define MAX_ROAMBUF	(2*1024*1024) /* XXX arbitrary */
     23 #define ROAMING_REQUEST	"roaming (at) appgate.com"
     24 
     25 extern int roaming_enabled;
     26 extern int resume_in_progress;
     27 
     28 void	request_roaming(void);
     29 int	get_snd_buf_size(void);
     30 int	get_recv_buf_size(void);
     31 void	add_recv_bytes(u_int64_t);
     32 int	wait_for_roaming_reconnect(void);
     33 void	roaming_reply(int, u_int32_t, void *);
     34 void	set_out_buffer_size(size_t);
     35 ssize_t	roaming_write(int, const void *, size_t, int *);
     36 ssize_t	roaming_read(int, void *, size_t, int *);
     37 size_t	roaming_atomicio(ssize_t (*)(int, void *, size_t), int, void *, size_t);
     38 u_int64_t	get_recv_bytes(void);
     39 u_int64_t	get_sent_bytes(void);
     40 void	roam_set_bytes(u_int64_t, u_int64_t);
     41 void	resend_bytes(int, u_int64_t *);
     42 void	calculate_new_key(u_int64_t *, u_int64_t, u_int64_t);
     43 int	resume_kex(void);
     44 
     45 #endif /* ROAMING */
     46