1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-12-04 14:46:46 -05:00

Added libotr

This commit is contained in:
James Booth 2013-08-13 22:23:47 +01:00
parent be653667e4
commit bd1c139429
5 changed files with 85 additions and 4 deletions

View File

@ -36,7 +36,8 @@ core_sources = \
src/tools/tinyurl.c src/tools/tinyurl.h \ src/tools/tinyurl.c src/tools/tinyurl.h \
src/config/accounts.c src/config/accounts.h \ src/config/accounts.c src/config/accounts.h \
src/config/preferences.c src/config/preferences.h \ src/config/preferences.c src/config/preferences.h \
src/config/theme.c src/config/theme.h src/config/theme.c src/config/theme.h \
src/otr.c src/otr.h
test_sources = \ test_sources = \
tests/test_roster.c tests/test_common.c tests/test_history.c \ tests/test_roster.c tests/test_common.c tests/test_history.c \

View File

@ -35,6 +35,8 @@ AC_ARG_WITH([libxml2],
[AS_HELP_STRING([--with-libxml2], [link with libxml2 instead of expat])]) [AS_HELP_STRING([--with-libxml2], [link with libxml2 instead of expat])])
AC_ARG_WITH([xscreensaver], AC_ARG_WITH([xscreensaver],
[AS_HELP_STRING([--with-xscreensaver], [use libXScrnSaver to determine indle time])]) [AS_HELP_STRING([--with-xscreensaver], [use libXScrnSaver to determine indle time])])
AC_ARG_WITH([otr],
[AS_HELP_STRING([--with-libotr], [enable otr entryption using libtr library])])
# Checks for libraries. # Checks for libraries.
if test "x$with_libxml2" = xyes; then if test "x$with_libxml2" = xyes; then
@ -63,7 +65,14 @@ elif test "x$with_xscreensaver" = x; then
[AC_MSG_NOTICE([libXss not found, falling back to profanity auto-away])]) [AC_MSG_NOTICE([libXss not found, falling back to profanity auto-away])])
AC_CHECK_LIB([X11], [main], [], AC_CHECK_LIB([X11], [main], [],
[AC_MSG_NOTICE([libX11 not found, falling back to profanity auto-away])]) [AC_MSG_NOTICE([libX11 not found, falling back to profanity auto-away])])
fi
if test "x$with_otr" = xyes; then
AC_CHECK_LIB([otr], [main], [],
[AC_MSG_ERROR([libotr is required for otr encryption support])])
elif test "x$enable_otr" = x; then
AC_CHECK_LIB([otr], [main], [],
[AC_MSG_NOTICE([libotr not found, otr entryption support no enabled])])
fi fi
AC_CHECK_LIB([resolv], [main], [], AC_CHECK_LIB([resolv], [main], [],
@ -96,14 +105,19 @@ if test "x$enable_notifications" != xno; then
[AC_MSG_NOTICE([libnotify module not found])]) [AC_MSG_NOTICE([libnotify module not found])])
fi fi
if test "x$with_otr" != xno; then
PKG_CHECK_MODULES([OTR], [libotr], [],
[AC_MSG_NOTICE([libotr module not found])])
fi
# Default parameters # Default parameters
AM_CFLAGS="-Wall" AM_CFLAGS="-Wall"
if test "x$PACKAGE_STATUS" = xdevelopment; then if test "x$PACKAGE_STATUS" = xdevelopment; then
AM_CFLAGS="$AM_CFLAGS -Wunused -Werror" AM_CFLAGS="$AM_CFLAGS -Wunused -Werror"
fi fi
LIBS="$LIBS $DEPS_LIBS $NOTIFY_LIBS" LIBS="$LIBS $DEPS_LIBS $NOTIFY_LIBS $OTR_LIBS"
AM_CPPFLAGS="$DEPS_CFLAGS $NOTIFY_CFLAGS" AM_CPPFLAGS="$DEPS_CFLAGS $NOTIFY_CFLAGS $OTR_CLAGS"
AC_SUBST(AM_CFLAGS) AC_SUBST(AM_CFLAGS)
AC_SUBST(AM_CPPFLAGS) AC_SUBST(AM_CPPFLAGS)

35
src/otr.c Normal file
View File

@ -0,0 +1,35 @@
/*
* otr.c
*
* Copyright (C) 2012, 2013 James Booth <boothj5@gmail.com>
*
* This file is part of Profanity.
*
* Profanity 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 3 of the License, or
* (at your option) any later version.
*
* Profanity 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 Profanity. If not, see <http://www.gnu.org/licenses/>.
*
*/
#include <libotr/proto.h>
#include <libotr/userstate.h>
#include <libotr/message.h>
#include <libotr/privkey.h>
#include "ui/ui.h"
void
otr_init(void)
{
cons_debug("otr_init()");
OTRL_INIT;
}

28
src/otr.h Normal file
View File

@ -0,0 +1,28 @@
/*
* otr.h
*
* Copyright (C) 2012, 2013 James Booth <boothj5@gmail.com>
*
* This file is part of Profanity.
*
* Profanity 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 3 of the License, or
* (at your option) any later version.
*
* Profanity 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 Profanity. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef OTR_H
#define OTR_H
void otr_init(void);
#endif

View File

@ -19,7 +19,6 @@
* along with Profanity. If not, see <http://www.gnu.org/licenses/>. * along with Profanity. If not, see <http://www.gnu.org/licenses/>.
* *
*/ */
#include "config.h" #include "config.h"
#ifdef HAVE_GIT_VERSION #ifdef HAVE_GIT_VERSION
@ -44,6 +43,7 @@
#include "contact.h" #include "contact.h"
#include "log.h" #include "log.h"
#include "muc.h" #include "muc.h"
#include "otr.h"
#include "resource.h" #include "resource.h"
#include "ui/notifier.h" #include "ui/notifier.h"
#include "ui/ui.h" #include "ui/ui.h"
@ -648,6 +648,9 @@ _init(const int disable_tls, char *log_level)
log_info("Initialising contact list"); log_info("Initialising contact list");
roster_init(); roster_init();
muc_init(); muc_init();
#ifdef HAVE_LIBOTR
otr_init();
#endif
atexit(_shutdown); atexit(_shutdown);
} }