From e2bc6f4153813cc570ae814c8ddb74628009b488 Mon Sep 17 00:00:00 2001 From: Michal Kubecek Date: Mon, 13 Apr 2015 09:21:39 +0200 Subject: initial checkin Check in contents of upstream 1.4.2 tarball, exclude generated files. --- src/audio/twinkle_zrtp_ui.h | 90 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/audio/twinkle_zrtp_ui.h (limited to 'src/audio/twinkle_zrtp_ui.h') diff --git a/src/audio/twinkle_zrtp_ui.h b/src/audio/twinkle_zrtp_ui.h new file mode 100644 index 0000000..66861dc --- /dev/null +++ b/src/audio/twinkle_zrtp_ui.h @@ -0,0 +1,90 @@ +/* + Copyright (C) 2005-2009 Michel de Boer + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +// Author: Werner Dittmann , (C) 2006 +// Michel de Boer + +/** + * @file + * User interface call back functions for libzrtpcpp. + */ + +#ifndef __TWINKLEZRTPUI_H_ +#define __TWINKLEZRTPUI_H_ + +#include "twinkle_config.h" + +#ifdef HAVE_ZRTP + +#include +#include +#include +#include "audio_session.h" +#include "userintf.h" + +using namespace GnuZrtpCodes; + +/** User interface for libzrtpcpp. */ +class TwinkleZrtpUI : public ZrtpUserCallback { + + public: + /** + * Constructor. + * @param session [in] The audio session that is encrypted by ZRTP. + */ + TwinkleZrtpUI(t_audio_session* session); + virtual ~TwinkleZrtpUI() {}; + + //@{ + /** @name ZRTP call back functions called from the ZRTP thread */ + virtual void secureOn(std::string cipher); + virtual void secureOff(); + virtual void showSAS(std::string sas, bool verified); + virtual void confirmGoClear(); + virtual void showMessage(MessageSeverity sev, int subCode); + virtual void zrtpNegotiationFailed(MessageSeverity severity, int subCode); + virtual void zrtpNotSuppOther(); + //} + + private: + /** Audio session associated with this user interface. */ + t_audio_session* audioSession; + + //@{ + /** @name Message mappings for libzrtpcpp */ + static map infoMap; /**< Info messages */ + static map warningMap; /**< Warnings */ + static map severeMap; /**< Severe errors */ + static map zrtpMap; /**< ZRTP errors */ + static bool mapsDone; /**< Flag to indicate that maps are initialized */ + static std::string unknownCode; /**< Unknown error code */ + //@} + + /** + * Map a message code returned by libzrtpcpp to a message text. + * @param severity [in] The severity of the message. + * @param subCode [in] The message code. + * @return The message text. + */ + const string *const mapCodesToString(MessageSeverity severity, int subCode); + +}; + +#endif // HAVE_ZRTP +#endif // __TWINKLEZRTPUI_H_ + -- cgit v1.2.3