1 // Copyright (C) 2018 Bruce Guenter <bruce@untroubled.org> 2 // 3 // This program is free software; you can redistribute it and/or modify 4 // it under the terms of the GNU General Public License as published by 5 // the Free Software Foundation; either version 2 of the License, or 6 // (at your option) any later version. 7 // 8 // This program is distributed in the hope that it will be useful, 9 // but WITHOUT ANY WARRANTY; without even the implied warranty of 10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 // GNU General Public License for more details. 12 // 13 // You should have received a copy of the GNU General Public License 14 // along with this program; if not, write to the Free Software 15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 16 17 #ifndef FDBUF__TLSOBUF__H__ 18 #define FDBUF__TLSOBUF__H__ 19 20 #include "fdobuf.h" 21 #include <gnutls/gnutls.h> 22 23 class tlsobuf : public fdobuf 24 { 25 public: 26 tlsobuf(gnutls_session_t, unsigned bufsz = FDBUF_SIZE); 27 protected: 28 gnutls_session_t session; 29 virtual ssize_t _write(const char* buf, ssize_t len); 30 }; 31 32 #endif // FDBUF__TLSOBUF__H__ 33