SSブログ

gpg2の実行時のワーニング・メッセージ [Linux]

gpg2 の実行時に、ワーニング・メッセージが表示される。
gpg の処理自体は正常に終了するが、このメッセージが気になるので、表示されないように対応を行った。
詳細は、下記の通りである。

1. CentOS 6.3、Debian GNU/Linux 6.0 の場合


・gnupg2-2.0.14-4.el6 on CentOS 6.3
・gnupg2 2.0.14-2 on Debian GNU/Linux 6.0

(1) 表示されるメッセージ

can't connect to `/home/xxx/.gnupg/S.gpg-agent': Connection refused


(2) 対処方法


下記の内容で /usr/local/bin/gpg を作成し、これを実行するようにする。

#!/bin/sh
#
# execute gpg v2
#
# - execute gpg-agent to suppress the following message
#   can't connect to `/home/xxx/.gnupg/S.gpg-agent': Connection refused
#
# - gpg-agent is terminated automatically
#

if [ "$GPG_AGENT_INFO" ]; then
    exec /usr/bin/gpg2 $*
else
    cmd_file="/tmp/`whoami`.gpg.$$"
    echo $0 $* > $cmd_file

    gpg-agent --daemon /bin/sh $cmd_file
    status=$?
    rm -f $cmd_file

    exit $status
fi

2. openSUSE 12.1 (pinentry-gtk-2 を使用) の場合


・gpg2-2.0.18-7.1.3
・pinentry-gtk2-0.8.1-10.2.2

(1) 表示されるメッセージ

(pinentry-gtk-2:xxx): GLib-GObject-CRITICAL **: \
Object class GtkSecureEntry doesn't implement property 'editing-canceled' \
from interface 'GtkCellEditable'


(2) 対処方法


下記の内容で /usr/local/bin/gpg を作成し、これを実行するようにする。

#!/bin/sh
#
# execute gpg v2
#
# - suppress the following message
#   (pinentry-gtk-2:xxx): GLib-GObject-CRITICAL **: \
#   Object class GtkSecureEntry doesn't implement property 'editing-canceled' \
#   from interface 'GtkCellEditable'
#

if [ "$DISPLAY" ] && which pinentry-gtk-2 >/dev/null 2>&1; then
    status_file="/tmp/`whoami`.gpg.$$"
    (/usr/bin/gpg $* 2>&1; echo $? > $status_file) | \
        egrep -v "(^$|: Object class GtkSecureEntry doesn't implement .*)"
    status=`cat $status_file`
    rm -f $status_file

    exit $status
else
    exec /usr/bin/gpg $*
fi


nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。