head 1.2; access; symbols pkgsrc-2014Q3:1.1.0.34 pkgsrc-2014Q3-base:1.1 pkgsrc-2014Q2:1.1.0.32 pkgsrc-2014Q2-base:1.1 pkgsrc-2014Q1:1.1.0.30 pkgsrc-2014Q1-base:1.1 pkgsrc-2013Q4:1.1.0.28 pkgsrc-2013Q4-base:1.1 pkgsrc-2013Q3:1.1.0.26 pkgsrc-2013Q3-base:1.1 pkgsrc-2013Q2:1.1.0.24 pkgsrc-2013Q2-base:1.1 pkgsrc-2013Q1:1.1.0.22 pkgsrc-2013Q1-base:1.1 pkgsrc-2012Q4:1.1.0.20 pkgsrc-2012Q4-base:1.1 pkgsrc-2012Q3:1.1.0.18 pkgsrc-2012Q3-base:1.1 pkgsrc-2012Q2:1.1.0.16 pkgsrc-2012Q2-base:1.1 pkgsrc-2012Q1:1.1.0.14 pkgsrc-2012Q1-base:1.1 pkgsrc-2011Q4:1.1.0.12 pkgsrc-2011Q4-base:1.1 pkgsrc-2011Q3:1.1.0.10 pkgsrc-2011Q3-base:1.1 pkgsrc-2011Q2:1.1.0.8 pkgsrc-2011Q2-base:1.1 pkgsrc-2011Q1:1.1.0.6 pkgsrc-2011Q1-base:1.1 pkgsrc-2010Q4:1.1.0.4 pkgsrc-2010Q4-base:1.1 pkgsrc-2010Q3:1.1.0.2 pkgsrc-2010Q3-base:1.1; locks; strict; comment @# @; 1.2 date 2014.11.13.19.19.08; author markd; state dead; branches; next 1.1; commitid BLxxtdelNTXOF3Yx; 1.1 date 2010.09.01.13.45.25; author wiz; state Exp; branches; next ; desc @@ 1.2 log @Update to KDE SC 4.14.3 @ text @$NetBSD: patch-aj,v 1.1 2010/09/01 13:45:25 wiz Exp $ libassuan2 support from http://websvn.kde.org/?view=revision&revision=1078528 --- kleopatra/libkleopatraclient/core/command.cpp.orig 2008-11-19 10:18:55.000000000 +0000 +++ kleopatra/libkleopatraclient/core/command.cpp @@@@ -283,19 +283,19 @@@@ typedef shared_ptr< remove_pointer( opaque ); pid = QByteArray( static_cast( buffer ), length ).toLongLong(); return 0; } -static assuan_error_t command_data_cb( void * opaque, const void * buffer, size_t length ) { +static gpg_error_t command_data_cb( void * opaque, const void * buffer, size_t length ) { QByteArray & ba = *static_cast( opaque ); ba.append( QByteArray( static_cast(buffer), length ) ); return 0; } -static assuan_error_t send_option( const AssuanClientContext & ctx, const char * name, const QVariant & value ) { +static gpg_error_t send_option( const AssuanClientContext & ctx, const char * name, const QVariant & value ) { if ( value.isValid() ) return my_assuan_transact( ctx, QString().sprintf( "OPTION %s=%s", name, value.toString().toUtf8().constData() ).toUtf8().constData() ); else return my_assuan_transact( ctx, QString().sprintf( "OPTION %s", name ).toUtf8().constData() ); } -static assuan_error_t send_file( const AssuanClientContext & ctx, const QString & file ) { +static gpg_error_t send_file( const AssuanClientContext & ctx, const QString & file ) { return my_assuan_transact( ctx, QString().sprintf( "FILE %s", hexencode( QFile::encodeName( file ) ).constData() ).toUtf8().constData() ); } @@@@ -373,21 +373,32 @@@@ void Command::Private::run() { out.canceled = false; - assuan_error_t err = 0; - - assuan_context_t naked_ctx = 0; - AssuanClientContext ctx; - if ( out.serverLocation.isEmpty() ) out.serverLocation = default_socket_name(); + AssuanClientContext ctx; + gpg_error_t err = 0; + const QString socketName = out.serverLocation; if ( socketName.isEmpty() ) { out.errorString = tr("Invalid socket name!"); goto leave; } - err = assuan_socket_connect( &naked_ctx, QFile::encodeName( socketName ).constData(), -1 ); + { + assuan_context_t naked_ctx = 0; + err = assuan_new( &naked_ctx ); + if ( err ) { + out.errorString = tr( "Could not allocate resources to connect to Kleopatra UI server at %1: %2" ) + .arg( socketName, to_error_string( err ) ); + goto leave; + } + + ctx.reset( naked_ctx ); + } + + + err = assuan_socket_connect( ctx.get(), QFile::encodeName( socketName ).constData(), -1, 0 ); if ( err ) { qDebug( "UI server not running, starting it" ); @@@@ -400,7 +411,7 @@@@ void Command::Private::run() { // give it a bit of time to start up and try a couple of times for ( int i = 0 ; err && i < 20 ; ++i ) { msleep( 500 ); - err = assuan_socket_connect( &naked_ctx, QFile::encodeName( socketName ).constData(), -1 ); + err = assuan_socket_connect( ctx.get(), QFile::encodeName( socketName ).constData(), -1, 0 ); } } @@@@ -410,9 +421,6 @@@@ void Command::Private::run() { goto leave; } - ctx.reset( naked_ctx ); - naked_ctx = 0; - out.serverPid = -1; err = my_assuan_transact( ctx, "GETINFO pid", &getinfo_pid_cb, &out.serverPid ); if ( err || out.serverPid <= 0 ) { @ 1.1 log @Switch to libassuan2, based on KDE SVN http://websvn.kde.org/?view=revision&revision=1078528 Suitable SVN commit found by drochner@@ ok markd@@ Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @