summaryrefslogtreecommitdiff
path: root/vio/VioPipe.h
blob: a6bb587c5489c587ee4e90b73134ebe167894cc3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
 * Concrete Vio around Handle.
 */

#ifdef __WIN__

#ifdef __GNUC__
#pragma interface			/* gcc class implementation */
#endif

VIO_NS_BEGIN

class VioPipe : public Vio
{
public:
  VioPipe(int fd);
  virtual		~VioPipe();
  virtual bool		is_open() const;
  virtual int		read(vio_ptr buf, int size);
  virtual int		write(const vio_ptr buf, int size);
  virtual int		blocking(bool	onoff);
  virtual bool		blocking() const;
  virtual bool		fcntl() const;
  virtual int		fastsend(bool	onoff = true);
  virtual int		keepalive(bool	onoff);
  virtual bool		should_retry() const;
  virtual int		close();
  virtual void 		release();
  virtual const char*	description() const;
  virtual bool		peer_addr(char *buf) const;
  virtual const char*	cipher_description() const { return "";}
  virtual int 		vio_errno();
private:
};

VIO_NS_END

#endif /* WIN32 */