Hello community,
here is the log from the commit of package twinkle for openSUSE:Factory
checked in at Mon Aug 22 11:13:09 CEST 2011.
--------
--- twinkle/twinkle.changes 2011-06-06 14:50:10.000000000 +0200
+++ /mounts/work_src_done/STABLE/twinkle/twinkle.changes 2011-07-24 18:53:31.000000000 +0200
@@ -1,0 +2,7 @@
+Sun Jul 24 18:48:44 CEST 2011 - Werner.Dittmann@t-online.de
+
+- add patch to modify Twinkle to use the new GNU uCommon/commoncpp libraries
+- remove dependency to common C++ library
+- merged the small non-void patch into the ucommon patch
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
twinkle-nonvoid.diff
New:
----
twinkle-ucommon.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ twinkle.spec ++++++
--- /var/tmp/diff_new_pack.R29zJS/_old 2011-08-22 11:12:39.000000000 +0200
+++ /var/tmp/diff_new_pack.R29zJS/_new 2011-08-22 11:12:39.000000000 +0200
@@ -21,14 +21,14 @@
# BR's in openSUSE:
BuildRequires: bison boost-devel file-devel kdelibs3-devel libsndfile-devel qt3-devel-tools readline-devel xorg-x11-devel
# BR's in network:telephony
-BuildRequires: libzrtpcpp-devel speex-devel
+BuildRequires: libzrtpcpp-devel >= 2.0.0 speex-devel
Summary: A SIP Soft Phone
Version: 1.4.2
-Release: 12
+Release: 14
License: GPLv2+
Group: Productivity/Telephony/SIP/Clients
Source: %{name}-%{version}.tar.bz2
-Patch0: twinkle-nonvoid.diff
+Patch0: twinkle-ucommon.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Url: http://www.twinklephone.com
@@ -42,7 +42,7 @@
%prep
%setup -q
-%patch0
+%patch0 -p1
%build
autoreconf -fi
++++++ twinkle-ucommon.diff ++++++
diff --git a/configure.in b/configure.in
index edd4953..1b52117 100644
--- a/configure.in
+++ b/configure.in
@@ -47,7 +47,7 @@ AC_CHECK_HEADERS([linux/errqueue.h],[],[],[
# Check version of the Common C++ library.
# This also sets the cc++2 include directory in CXXFLAGS
-OST_CCXX2_VERSION(1.6.0,,exit)
+#OST_CCXX2_VERSION(1.6.0,,exit)
# Temporarily add some default directories to PKG_CONFIG_PATH such that
# the user will not be burdened with setting PKG_CONFIG_PATH
@@ -66,7 +66,9 @@ fi
export PKG_CONFIG_PATH
-PKG_CHECK_MODULES(CCRTP, libccrtp1 >= 1.6.0)
+PKG_CHECK_MODULES(CCRTP, libccrtp >= 2.0.0)
+PKG_CHECK_MODULES(UCOMMON, ucommon >= 5.0.0)
+CCRTP_LIBS="$CCRTP_LIBS $UCOMMON_LIBS"
PKG_CHECK_MODULES(XML2, libxml-2.0)
# AC_CHECK_HEADER(libxml/tree.h, [],
@@ -136,7 +138,7 @@ done
#echo "INCLUDEPATH += `$CCGNU2_CONFIG --includes`" | sed -e s/-I//g > $QT_INCL_PRO
# libccrtp1(ccrtp) depend from libccgnu2(commoncpp2) and
# should include above flags !
-echo "INCLUDEPATH += `$PKG_CONFIG --cflags-only-I libccrtp1`" | sed -e s/-I//g >> $QT_INCL_PRO
+echo "INCLUDEPATH += `$PKG_CONFIG --cflags-only-I libccrtp`" | sed -e s/-I//g >> $QT_INCL_PRO
echo "INCLUDEPATH += `$PKG_CONFIG --cflags-only-I libxml-2.0`" | sed -e s/-I//g >> $QT_INCL_PRO
# get libraries specified on command line
@@ -144,6 +146,7 @@ echo $LDFLAGS | xargs echo LIBS += >> $QT_INCL_PRO
echo "LIBS += `$CCGNU2_CONFIG --stdlibs`" >> $QT_INCL_PRO
echo "LIBS += $CCRTP_LIBS" >> $QT_INCL_PRO
+echo "LIBS += $UCOMMON_LIBS" >> $QT_INCL_PRO
echo "LIBS += $XML2_LIBS" >> $QT_INCL_PRO
# Check if KDE is available
@@ -264,7 +267,7 @@ fi
# Check if zrtp is available
if test "x$ac_cv_zrtp" = "xyes"
then
- PKG_CHECK_MODULES(ZRTP, libzrtpcpp >= 1.3.0)
+ PKG_CHECK_MODULES(ZRTP, libzrtpcpp >= 2.0.0)
AC_CHECK_LIB(zrtpcpp, main, [
AC_CHECK_HEADER(libzrtpcpp/ZrtpQueue.h, [],
[AC_MSG_ERROR([zrtp header files missing])])
diff --git a/src/audio/audio_decoder.h b/src/audio/audio_decoder.h
index 5fa9c55..cee198f 100644
--- a/src/audio/audio_decoder.h
+++ b/src/audio/audio_decoder.h
@@ -21,7 +21,6 @@
#ifndef _AUDIO_DECODER_H
#define _AUDIO_DECODER_H
-#include
#include "twinkle_config.h"
#include "audio_codecs.h"
#include "user.h"
diff --git a/src/audio/audio_encoder.h b/src/audio/audio_encoder.h
index d280567..e2fb874 100644
--- a/src/audio/audio_encoder.h
+++ b/src/audio/audio_encoder.h
@@ -21,7 +21,6 @@
#ifndef _AUDIO_ENCODER_H
#define _AUDIO_ENCODER_H
-#include
#include "twinkle_config.h"
#include "audio_codecs.h"
#include "user.h"
diff --git a/src/audio/audio_rx.cpp b/src/audio/audio_rx.cpp
index bb6db2b..db6d4f3 100644
--- a/src/audio/audio_rx.cpp
+++ b/src/audio/audio_rx.cpp
@@ -22,7 +22,6 @@
#include <cstdlib>
#include
#include
-#include
#include "audio_rx.h"
#include "log.h"
diff --git a/src/audio/dtmf_player.h b/src/audio/dtmf_player.h
index 5fa88db..0145289 100644
--- a/src/audio/dtmf_player.h
+++ b/src/audio/dtmf_player.h
@@ -21,7 +21,6 @@
#ifndef _DTMF_PLAYER_H
#define _DTMF_PLAYER_H
-#include
#include "twinkle_config.h"
#include "audio_encoder.h"
#include "freq_gen.h"
diff --git a/src/audio/freq_gen.h b/src/audio/freq_gen.h
index 5659739..6817baa 100644
--- a/src/audio/freq_gen.h
+++ b/src/audio/freq_gen.h
@@ -26,7 +26,7 @@
#define _FREQ_GEN_H
#include <vector>
-#include
+#include
using namespace std;
diff --git a/src/audio/tone_gen.h b/src/audio/tone_gen.h
index 1323fd4..a789734 100644
--- a/src/audio/tone_gen.h
+++ b/src/audio/tone_gen.h
@@ -21,7 +21,6 @@
#include <string>
#include <fstream>
-#include
#include
#include "sys_settings.h"
#include "threads/mutex.h"
diff --git a/src/call_script.h b/src/call_script.h
index 4253bda..db19987 100644
--- a/src/call_script.h
+++ b/src/call_script.h
@@ -65,7 +65,6 @@
#include <vector>
#include <string>
-#include
#include "user.h"
#include "parser/request.h"
diff --git a/src/log.cpp b/src/log.cpp
index ee2ce87..136afd3 100644
--- a/src/log.cpp
+++ b/src/log.cpp
@@ -40,6 +40,7 @@ void *main_logview(void *arg) {
// TODO: handle situation where log file was zapped.
if (ui) ui->cb_log_updated(false);
}
+ return NULL;
}
bool t_log::move_current_to_old(void) {
@@ -161,7 +162,7 @@ void t_log::write_header(const string &func_name, t_log_class log_class,
gettimeofday(&t, NULL);
date = t.tv_sec;
- localtime_r(&date, &tm);
+ ::localtime_r(&date, &tm);
*log_stream << "+++ ";
*log_stream << tm.tm_mday;
diff --git a/src/mwi/mwi_dialog.cpp b/src/mwi/mwi_dialog.cpp
index 41ca0dd..135a866 100644
--- a/src/mwi/mwi_dialog.cpp
+++ b/src/mwi/mwi_dialog.cpp
@@ -32,4 +32,5 @@ t_mwi_dialog::t_mwi_dialog(t_phone_user *_phone_user) :
t_mwi_dialog *t_mwi_dialog::copy(void) {
// Copy is not needed.
assert(false);
+ return NULL;
}
diff --git a/src/mwi/simple_msg_sum_body.h b/src/mwi/simple_msg_sum_body.h
index 48f7584..346626f 100644
--- a/src/mwi/simple_msg_sum_body.h
+++ b/src/mwi/simple_msg_sum_body.h
@@ -26,7 +26,6 @@
#include <string>
#include <map>
-#include
#include "parser/sip_body.h"
#include "sockets/url.h"
diff --git a/src/parser/definitions.cpp b/src/parser/definitions.cpp
index c849553..ef2e51d 100644
--- a/src/parser/definitions.cpp
+++ b/src/parser/definitions.cpp
@@ -38,6 +38,7 @@ string method2str(const t_method &m, const string &unknown) {
case METHOD_UNKNOWN: return unknown;
default: assert(false);
}
+ return unknown;
}
t_method str2method(const string &s) {
diff --git a/src/parser/request.cpp b/src/parser/request.cpp
index 1e678d4..9ee3d75 100644
--- a/src/parser/request.cpp
+++ b/src/parser/request.cpp
@@ -23,9 +23,11 @@
#include "milenage.h"
#include "audits/memman.h"
#include <sstream>
-#include
+#include
-using namespace ost;
+using namespace UCOMMON_NAMESPACE;
+
+// using namespace ost;
// AKAv1-MD5 algorithm specific helpers
@@ -148,10 +150,10 @@ int b64_dec(const u8 * src, u8 * dst, int len)
// authentication with AKAv1-MD5 algorithm (RFC 3310)
bool t_request::authorize_akav1_md5(const t_digest_challenge &dchlg,
- const string &username, const string &passwd, uint8 *op, uint8 *amf,
+ const std::string &username, const std::string &passwd, uint8 *op, uint8 *amf,
unsigned long nc,
- const string &cnonce, const string &qop, string &resp,
- string &fail_reason) const
+ const std::string &cnonce, const std::string &qop, std::string &resp,
+ std::string &fail_reason) const
{
u8 nonce64[B64_DEC_SZ(dchlg.nonce.size())];
int len = b64_dec((const u8 *)dchlg.nonce.c_str(), nonce64, dchlg.nonce.size());
@@ -183,7 +185,7 @@ bool t_request::authorize_akav1_md5(const t_digest_challenge &dchlg,
for (i=0; i < AKA_SQNLEN; i++)
sqn[i] = sqnxoraka[i] ^ ak[i];
- string res_str = string((char *)res, AKA_RESLEN);
+ std::string res_str = std::string((char *)res, AKA_RESLEN);
return authorize_md5(dchlg, username, res_str, nc, cnonce, qop,
resp, fail_reason);
@@ -192,11 +194,11 @@ bool t_request::authorize_akav1_md5(const t_digest_challenge &dchlg,
// authentication with MD5 algorithm
bool t_request::authorize_md5(const t_digest_challenge &dchlg,
- const string &username, const string &passwd, unsigned long nc,
- const string &cnonce, const string &qop, string &resp,
- string &fail_reason) const
+ const std::string &username, const std::string &passwd, unsigned long nc,
+ const std::string &cnonce, const std::string &qop, std::string &resp,
+ std::string &fail_reason) const
{
- string A1, A2;
+ std::string A1, A2;
// RFC 2617 3.2.2.2
A1 = username + ":" + dchlg.realm + ":" + passwd;
@@ -207,60 +209,51 @@ bool t_request::authorize_md5(const t_digest_challenge &dchlg,
A2 = method2str(method, unknown_method) + ":" + uri.encode();
A2 += ":";
if (body) {
- MD5Digest MD5body;
- MD5body << body->encode();
- ostringstream os;
- os << MD5body;
- A2 += os.str();
+ digest_t MD5body = "md5";
+ MD5body.puts(body->encode().c_str());
+ A2 += std::string(MD5body.c_str());
} else {
- MD5Digest MD5body;
- MD5body << "";
- ostringstream os;
- os << MD5body;
- A2 += os.str();
+ digest_t MD5body = "md5";
+ MD5body.puts("");
+ A2 += std::string(MD5body.c_str());
}
}
-
// RFC 2716 3.2.2.1
// Caculate digest
- MD5Digest MD5A1;
- MD5Digest MD5A2;
- ostringstream HA1;
- ostringstream HA2;
+ digest_t MD5A1 = "md5";
+ digest_t MD5A2 = "md5";
- MD5A1 << A1;
- MD5A2 << A2;
- HA1 << MD5A1;
- HA2 << MD5A2;
+ MD5A1.puts(A1.c_str());
+ MD5A2.puts(A2.c_str());
- string x;
+ std::string x;
if (cmp_nocase(qop, QOP_AUTH) == 0 || cmp_nocase(qop, QOP_AUTH_INT) == 0) {
- x = HA1.str() + ":";
+ x = std::string(MD5A1.c_str());
+ x += ":";
x += dchlg.nonce + ":";
x += int2str(nc, "%08x") + ":";
x += cnonce + ":";
x += qop + ":";
- x += HA2.str();
+ x += std::string(MD5A2.c_str());
} else {
- x = HA1.str() + ":";
+ x = std::string(MD5A1.c_str());
+ x += ":";
x += dchlg.nonce + ":";
- x += HA2.str();
+ x += std::string(MD5A2.c_str());
}
- MD5Digest digest;
- digest << x;
- ostringstream dresp;
- dresp << digest;
+ digest_t digest = "md5";
+ digest.puts(x.c_str());
- resp = dresp.str();
+ resp = std::string(digest.c_str());
return true;
}
bool t_request::authorize(const t_challenge &chlg, t_user *user_config,
- const string &username, const string &passwd, unsigned long nc,
- const string &cnonce, t_credentials &cr, string &fail_reason) const
+ const std::string &username, const std::string &passwd, unsigned long nc,
+ const std::string &cnonce, t_credentials &cr, std::string &fail_reason) const
{
// Only Digest authentication is supported
if (cmp_nocase(chlg.auth_scheme, AUTH_DIGEST) != 0) {
@@ -271,17 +264,17 @@ bool t_request::authorize(const t_challenge &chlg, t_user *user_config,
const t_digest_challenge &dchlg = chlg.digest_challenge;
- string qop = "";
+ std::string qop = "";
// Determine QOP
// If both auth and auth-int are supported by the server, then
// choose auth to avoid problems with SIP ALGs. A SIP ALG rewrites
// the body of a message, thereby breaking auth-int authentication.
if (!dchlg.qop_options.empty()) {
- const list<string>::const_iterator i = find(
+ const liststd::string::const_iterator i = find(
dchlg.qop_options.begin(), dchlg.qop_options.end(),
QOP_AUTH_INT);
- const list<string>::const_iterator j = find(
+ const liststd::string::const_iterator j = find(
dchlg.qop_options.begin(), dchlg.qop_options.end(),
QOP_AUTH);
if (j != dchlg.qop_options.end())
@@ -297,7 +290,7 @@ bool t_request::authorize(const t_challenge &chlg, t_user *user_config,
}
bool ret = false;
- string resp;
+ std::string resp;
if (cmp_nocase(dchlg.algorithm, ALG_MD5) == 0) {
ret = authorize_md5(dchlg, username, passwd, nc, cnonce,
@@ -359,15 +352,15 @@ t_request::t_request(const t_method m) : t_sip_message() {
method = m;
}
-void t_request::set_method(const string &s) {
+void t_request::set_method(const std::string &s) {
method = str2method(s);
if (method == METHOD_UNKNOWN) {
unknown_method = s;
}
}
-string t_request::encode(bool add_content_length) {
- string s;
+std::string t_request::encode(bool add_content_length) {
+ std::string s;
s = method2str(method, unknown_method) + ' ' + uri.encode();
s += " SIP/";
@@ -377,9 +370,9 @@ string t_request::encode(bool add_content_length) {
return s;
}
-list<string> t_request::encode_env(void) {
- string s;
- list<string> l = t_sip_message::encode_env();
+liststd::string t_request::encode_env(void) {
+ std::string s;
+ liststd::string l = t_sip_message::encode_env();
s = "SIPREQUEST_METHOD=";
s += method2str(method, unknown_method);
@@ -431,7 +424,7 @@ void t_request::set_route(const t_url &target_uri, const list &route_se
}
}
-t_response *t_request::create_response(int code, string reason) const
+t_response *t_request::create_response(int code, std::string reason) const
{
t_response *r;
@@ -458,7 +451,7 @@ t_response *t_request::create_response(int code, string reason) const
return r;
}
-bool t_request::is_valid(bool &fatal, string &reason) const {
+bool t_request::is_valid(bool &fatal, std::string &reason) const {
if (!t_sip_message::is_valid(fatal, reason)) return false;
fatal = false;
@@ -702,8 +695,8 @@ void t_request::set_destination(const t_ip_port &ip_port) {
}
bool t_request::www_authorize(const t_challenge &chlg, t_user *user_config,
- const string &username, const string &passwd, unsigned long nc,
- const string &cnonce, t_credentials &cr, string &fail_reason)
+ const std::string &username, const std::string &passwd, unsigned long nc,
+ const std::string &cnonce, t_credentials &cr, std::string &fail_reason)
{
if (!authorize(chlg, user_config, username, passwd, nc, cnonce, cr, fail_reason)) {
return false;
@@ -715,8 +708,8 @@ bool t_request::www_authorize(const t_challenge &chlg, t_user *user_config,
}
bool t_request::proxy_authorize(const t_challenge &chlg, t_user *user_config,
- const string &username, const string &passwd, unsigned long nc,
- const string &cnonce, t_credentials &cr, string &fail_reason)
+ const std::string &username, const std::string &passwd, unsigned long nc,
+ const std::string &cnonce, t_credentials &cr, std::string &fail_reason)
{
if (!authorize(chlg, user_config, username, passwd, nc, cnonce, cr, fail_reason)) {
return false;
diff --git a/src/parser/sip_body.h b/src/parser/sip_body.h
index 88c93a7..a63115b 100644
--- a/src/parser/sip_body.h
+++ b/src/parser/sip_body.h
@@ -20,7 +20,7 @@
#ifndef _H_SIP_BODY
#define _H_SIP_BODY
-#include
+#include
#include <string>
#include
diff --git a/src/presence/presence_dialog.cpp b/src/presence/presence_dialog.cpp
index f281493..070dbc2 100644
--- a/src/presence/presence_dialog.cpp
+++ b/src/presence/presence_dialog.cpp
@@ -32,4 +32,5 @@ t_presence_dialog::t_presence_dialog(t_phone_user *_phone_user, t_presence_state
t_presence_dialog *t_presence_dialog::copy(void) {
// Copy is not needed.
assert(false);
+ return NULL;
}
diff --git a/src/sdp/sdp.cpp b/src/sdp/sdp.cpp
index 7d5de3b..3c9a93d 100644
--- a/src/sdp/sdp.cpp
+++ b/src/sdp/sdp.cpp
@@ -37,6 +37,7 @@ string sdp_ntwk_type2str(t_sdp_ntwk_type n) {
default:
assert(false);
}
+ return "";
}
t_sdp_ntwk_type str2sdp_ntwk_type(string s) {
@@ -53,6 +54,7 @@ string sdp_addr_type2str(t_sdp_addr_type a) {
default:
assert(false);
}
+ return "";
}
t_sdp_addr_type str2sdp_addr_type(string s) {
@@ -69,6 +71,7 @@ string sdp_transport2str(t_sdp_transport t) {
default:
assert(false);
}
+ return "";
}
t_sdp_transport str2sdp_transport(string s) {
@@ -92,6 +95,7 @@ string sdp_media_type2str(t_sdp_media_type m) {
default:
assert(false);
}
+ return "";
}
string get_rtpmap(unsigned format, t_audio_codec codec) {
@@ -153,6 +157,7 @@ string sdp_media_direction2str(t_sdp_media_direction d) {
default:
assert(false);
}
+ return "";
}
///////////////////////////////////
diff --git a/src/sequence_number.h b/src/sequence_number.h
index c192012..6119506 100644
--- a/src/sequence_number.h
+++ b/src/sequence_number.h
@@ -24,7 +24,6 @@
#ifndef _SEQUENCE_NUMBER_H
#define _SEQUENCE_NUMBER_H
-#include
/**
* Sequence numbers.
diff --git a/src/sys_settings.cpp b/src/sys_settings.cpp
index 36e7142..9a9ee11 100644
--- a/src/sys_settings.cpp
+++ b/src/sys_settings.cpp
@@ -1064,7 +1064,7 @@ string t_sys_settings::about(bool html) const {
if (html) s += "<BR>";
s += "\n";
- s += "* GNU CommonC++ - http://www.gnu.org/software/commoncpp";
+ s += "* GNU uCommon C++ - http://www.gnutelephony.org/index.php/Category:Software";
if (html) s += "<BR><BR>";
s += "\n\n";
diff --git a/src/timekeeper.cpp b/src/timekeeper.cpp
index 9a1a515..88983e1 100644
--- a/src/timekeeper.cpp
+++ b/src/timekeeper.cpp
@@ -782,4 +782,5 @@ void *timekeeper_sigwait(void *arg) {
if (sigwait(&sigset, &sig) == EINTR) continue;
evq_timekeeper->interrupt();
}
+ return NULL;
}
diff --git a/src/user.cpp b/src/user.cpp
index 224e291..b3de725 100644
--- a/src/user.cpp
+++ b/src/user.cpp
@@ -225,6 +225,7 @@ string t_user::bit_rate_type2str(t_bit_rate_type b) const {
default:
assert(false);
}
+ return "";
}
t_dtmf_transport t_user::str2dtmf_transport(const string &s) const {
@@ -244,6 +245,7 @@ string t_user::dtmf_transport2str(t_dtmf_transport d) const {
default:
assert(false);
}
+ return "";
}
t_g726_packing t_user::str2g726_packing(const string &s) const {
@@ -259,6 +261,7 @@ string t_user::g726_packing2str(t_g726_packing packing) const {
default:
assert(false);
}
+ return "";
}
t_sip_transport t_user::str2sip_transport(const string &s) const {
@@ -276,6 +279,7 @@ string t_user::sip_transport2str(t_sip_transport transport) const {
default:
assert(false);
}
+ return "";
}
string t_user::expand_filename(const string &filename) {
diff --git a/src/user.h b/src/user.h
index 94c015a..f78652d 100644
--- a/src/user.h
+++ b/src/user.h
@@ -25,7 +25,6 @@
#include <string>
#include <list>
-#include
#include "protocol.h"
#include "sys_settings.h"
#include "audio/audio_codecs.h"
diff --git a/src/util.h b/src/util.h
index b2509df..2f246da 100644
--- a/src/util.h
+++ b/src/util.h
@@ -26,7 +26,7 @@
#include <vector>
#include <string>
-#include
+#include
using namespace std;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org