Description of problem: The update to pan asks for the password to the keyring for Default when trying to access news server. I look in the event log and it says no password, but it was just working with 0.135. So I try to set it, and it asks for the keyring password again. Version-Release number of selected component (if applicable): 0.136 How reproducible: every time Steps to Reproduce: 1. Be running pan 0.135 for news provider requiring user/password authentication 2. Update to 0.136 3. Next start of program asks for password for keyring for Default Actual results: Can't log on to news server Expected results: Transparent log on to server. Additional info: Not sure why pan suddenly is asking for this. It has worked with this news server for years.
A little digging shows that a keyring is supposed to be generated automatically, and opened using users password, when starting X via a greeter. However, I'm starting LXDE using OpenBox as a window manager with startx from a console. I tried modifying the /etc/pam.d/login and /etc/pam.d/lxdm files into a new file called /etc/pam.d/startx that would start gnome keyring. Since I don't really understand pam functionality, and didn't experiment a lot in fear of breaking security, it isn't surprising that it didn't work. I've read the gnome keyring documentation and it isn't clear to me how I can manually generate the keyring and populate it with the proper passwords, and set an environment variable to let applications know it is available. As you can tell, I don't use gnome keyring; I have scripts to encode things I want encrypted. It's a great idea to have applications store their passwords encrypted, transparently to the user. How can I get this to work in my use case.
This bug will be fixed in the next package release.
pan-0.138-1.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/pan-0.138-1.fc17
Package pan-0.138-1.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing pan-0.138-1.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-9655/pan-0.138-1.fc17 then log in and leave karma (feedback).
This doesn't work for me. When I try to start it from the command line I see the error: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name news.pan.NZB was not provided by any .service files When I try to access newsgroups on the password protected server, nothing happens. There are no error messages that I can find. When I close this version of pan, I get Segmentation fault (core dumped) I thank you for your efforts, but I think the new development has left me behind. I'm running lxde and openbox, using startx from a console in multiuser to start them. This probably isn't supported with the new way of doing things. So I downloaded the 0.135 source and was able, with some minor but tedious changes, to get it to compile. It's been a while, but I think it was just that some api names changed slightly.
pan-0.138-1.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.
Just for completeness, and in case anyone else has the problem, I am including a patch to allow pan-0.135.tar.bz2 to be compiled under F17. The actual change was to an include path for the gnome lib, and the patch changes every code file that needs it. To use the patch, unpack the tar file, tar -jxvf pan-0.135.tar.bz2 cp the patch to pan-0.135 as pan-0.135.patch cd to pan-0.135 run patch -p1 < pan-0.135.patch ./configure make cd pan/gui ./pan to run the pan-0.135 executable instead of the system version. make install will put it in /usr/local/bin, and if you have that early in your path you should just be able to type pan in an xterm to run it. patch follows, cut and paste to file pan-0.135.patch to use it: diff -U5 -p -r pan-0.135/pan/data/article-cache.h pan-0.135-altered/pan/data/article-cache.h --- pan-0.135/pan/data/article-cache.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/data/article-cache.h 2012-04-21 14:55:07.895036978 -0700 @@ -21,11 +21,11 @@ #define _ArticleCache_h_ #include <map> #include <vector> extern "C" { - #include <glib/gtypes.h> // for guint64 + #include <glib.h> // for guint64 } #include <pan/general/string-view.h> #include <pan/general/quark.h> extern "C" diff -U5 -p -r pan-0.135/pan/data-impl/article-filter.cc pan-0.135-altered/pan/data-impl/article-filter.cc --- pan-0.135/pan/data-impl/article-filter.cc 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/data-impl/article-filter.cc 2012-04-21 14:30:01.514097446 -0700 @@ -21,11 +21,12 @@ #include <cassert> #include <pan/general/debug.h> #include <pan/general/macros.h> #include <pan/data/data.h> #include <gmime/gmime.h> -#include <glib/gprintf.h> +#include <glib.h> +//#include <glib/gprintf.h> #include "article-filter.h" using namespace pan; const StringView diff -U5 -p -r pan-0.135/pan/data-impl/data-impl.cc pan-0.135-altered/pan/data-impl/data-impl.cc --- pan-0.135/pan/data-impl/data-impl.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/data-impl/data-impl.cc 2012-04-21 14:31:13.361094561 -0700 @@ -22,11 +22,11 @@ **************/ #include <config.h> extern "C" { #include <glib/gi18n.h> - #include <glib/gfileutils.h> // for g_build_filename + #include <glib.h> // for g_build_filename } #include <pan/general/debug.h> #include <pan/general/file-util.h> #include <pan/general/log.h> #include <pan/general/macros.h> diff -U5 -p -r pan-0.135/pan/data-impl/groups.cc pan-0.135-altered/pan/data-impl/groups.cc --- pan-0.135/pan/data-impl/groups.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/data-impl/groups.cc 2012-04-21 14:35:21.466084604 -0700 @@ -26,13 +26,13 @@ #include <iostream> #include <map> #include <set> #include <vector> -#include <glib.h> extern "C" { #include <unistd.h> + #include <glib.h> #include <glib/gi18n.h> } #include <pan/general/debug.h> #include <pan/general/file-util.h> diff -U5 -p -r pan-0.135/pan/data-impl/headers.cc pan-0.135-altered/pan/data-impl/headers.cc --- pan-0.135/pan/data-impl/headers.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/data-impl/headers.cc 2012-04-21 14:36:24.802082058 -0700 @@ -22,14 +22,14 @@ #include <fstream> #include <map> #include <vector> #include <string> #include <cmath> -#include <glib.h> extern "C" { #include <sys/types.h> // for chmod #include <sys/stat.h> // for chmod + #include <glib.h> #include <glib/gi18n.h> } #include <pan/general/debug.h> #include <pan/general/log.h> #include <pan/general/macros.h> diff -U5 -p -r pan-0.135/pan/general/file-util.h pan-0.135-altered/pan/general/file-util.h --- pan-0.135/pan/general/file-util.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/file-util.h 2012-04-21 15:03:44.221016249 -0700 @@ -23,11 +23,11 @@ #include <string> extern "C" { #include <stddef.h> #include <stdio.h> - #include <glib/gtypes.h> + #include <glib.h> #include <glib/gstdio.h> } #include <pan/general/string-view.h> #define g_freopen freopen diff -U5 -p -r pan-0.135/pan/general/locking.h pan-0.135-altered/pan/general/locking.h --- pan-0.135/pan/general/locking.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/locking.h 2012-04-21 15:06:09.281010427 -0700 @@ -20,11 +20,14 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef _Mutex_h_ #define _Mutex_h_ -#include <glib/gthread.h> +extern "C" +{ + #include <glib.h> +} namespace pan { /*** * A C++ wrapper for GMutex. diff -U5 -p -r pan-0.135/pan/general/macros.h pan-0.135-altered/pan/general/macros.h --- pan-0.135/pan/general/macros.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/macros.h 2012-04-21 15:31:14.057950023 -0700 @@ -60,17 +60,9 @@ *** g_assert **/ extern "C" { - #include <glibconfig.h> // get the version - #include <glib/gutils.h> // get GLIB_CHECK_VERSION - - // pick up g_assert() - #if GLIB_CHECK_VERSION(2,16,0) - #include <glib/gtestutils.h> - #else - #include <glib/gmessages.h> - #endif + #include <glib.h> // get GLIB_CHECK_VERSION } #endif diff -U5 -p -r pan-0.135/pan/general/time-elapsed.h pan-0.135-altered/pan/general/time-elapsed.h --- pan-0.135/pan/general/time-elapsed.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/time-elapsed.h 2012-04-21 15:09:29.770002380 -0700 @@ -1,11 +1,9 @@ #ifndef __Time_Elapsed_h__ #define __Time_Elapsed_h__ -#include <glib/gtypes.h> // for GTimeVal -#include <glib/gmain.h> // for g_get_current_time -#include <glib/gtimer.h> // for GUSEC_PER_SEC +#include <glib.h> // for GTimeVal for g_get_current_time for GUSEC_PER_SEC namespace pan { /** * Simple object used for logging how long a piece of code takes to execute. diff -U5 -p -r pan-0.135/pan/general/worker-pool.cc pan-0.135-altered/pan/general/worker-pool.cc --- pan-0.135/pan/general/worker-pool.cc 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/worker-pool.cc 2012-04-21 15:10:54.179998992 -0700 @@ -19,11 +19,14 @@ * 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 */ #include <cassert> -#include <glib/gmain.h> // for g_idle_add +extern "C" +{ + #include <glib.h> // for g_idle_add +} #include <pan/general/debug.h> #include <pan/general/macros.h> #include "worker-pool.h" using namespace pan; diff -U5 -p -r pan-0.135/pan/general/worker-pool.h pan-0.135-altered/pan/general/worker-pool.h --- pan-0.135/pan/general/worker-pool.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/general/worker-pool.h 2012-04-21 15:11:58.874996395 -0700 @@ -22,12 +22,14 @@ */ #ifndef _Worker_Pool_H_ #define _Worker_Pool_H_ #include <set> -#include <glib/gtypes.h> -#include <glib/gthreadpool.h> +extern "C" +{ + #include <glib.h> +} namespace pan { /** * A C++ wrapper for GThreadPool. diff -U5 -p -r pan-0.135/pan/gui/group-prefs-dialog.cc pan-0.135-altered/pan/gui/group-prefs-dialog.cc --- pan-0.135/pan/gui/group-prefs-dialog.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/gui/group-prefs-dialog.cc 2012-04-21 15:15:16.211988473 -0700 @@ -16,11 +16,13 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include <config.h> -extern "C" { +extern "C" +{ + #include <glib.h> #include <glib/gi18n.h> #include <gtk/gtk.h> } #include <pan/general/debug.h> #include <pan/general/macros.h> diff -U5 -p -r pan-0.135/pan/gui/prefs-ui.cc pan-0.135-altered/pan/gui/prefs-ui.cc --- pan-0.135/pan/gui/prefs-ui.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/gui/prefs-ui.cc 2012-04-21 15:16:20.728985880 -0700 @@ -17,10 +17,11 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include <config.h> extern "C" { + #include <glib.h> #include <glib/gi18n.h> #include <gtk/gtk.h> } #include <pan/general/debug.h> #include <pan/general/macros.h> diff -U5 -p -r pan-0.135/pan/gui/render-bytes.cc pan-0.135-altered/pan/gui/render-bytes.cc --- pan-0.135/pan/gui/render-bytes.cc 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/gui/render-bytes.cc 2012-04-21 15:18:09.272981526 -0700 @@ -1,6 +1,9 @@ -#include <glib/gutils.h> // g_snprintf +extern "C" +{ + #include <glib.h> // g_snprintf +} #include "render-bytes.h" namespace pan { char* diff -U5 -p -r pan-0.135/pan/gui/render-bytes.h pan-0.135-altered/pan/gui/render-bytes.h --- pan-0.135/pan/gui/render-bytes.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/gui/render-bytes.h 2012-04-21 15:19:00.260979476 -0700 @@ -1,7 +1,10 @@ #ifndef RENDER_BYTES_H #define RENDER_BYTES_H -#include <glib/gtypes.h> +extern "C" +{ + #include <glib.h> +} namespace pan { extern char* render_bytes (guint64); } #endif diff -U5 -p -r pan-0.135/pan/tasks/socket-impl-gio.h pan-0.135-altered/pan/tasks/socket-impl-gio.h --- pan-0.135/pan/tasks/socket-impl-gio.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/tasks/socket-impl-gio.h 2012-04-21 15:22:29.656971074 -0700 @@ -19,12 +19,14 @@ #ifndef __SocketGIO_h__ #define __SocketGIO_h__ #include <string> -#include <glib/giochannel.h> -#include <glib/gstring.h> +extern "C" +{ + #include <glib.h> +} #include <pan/tasks/socket.h> namespace pan { /** diff -U5 -p -r pan-0.135/pan/usenet-utils/message-check.cc pan-0.135-altered/pan/usenet-utils/message-check.cc --- pan-0.135/pan/usenet-utils/message-check.cc 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/usenet-utils/message-check.cc 2012-04-21 15:24:35.568966019 -0700 @@ -18,13 +18,13 @@ */ #include <config.h> #include <ctype.h> #include <string.h> -#include <glib.h> extern "C" { -#include <glib/gi18n.h> + #include <glib.h> + #include <glib/gi18n.h> } #include <pan/general/debug.h> #include <pan/general/macros.h> #include <pan/general/string-view.h> #include "gnksa.h" diff -U5 -p -r pan-0.135/pan/usenet-utils/mime-utils.h pan-0.135-altered/pan/usenet-utils/mime-utils.h --- pan-0.135/pan/usenet-utils/mime-utils.h 2011-02-15 03:46:29.000000000 -0700 +++ pan-0.135-altered/pan/usenet-utils/mime-utils.h 2012-04-21 15:25:14.086964473 -0700 @@ -19,11 +19,14 @@ #ifndef _UtilMime_h_ #define _UtilMime_h_ #include <vector> -#include <glib/gtypes.h> +extern "C" +{ + #include <glib.h> +} #include <gmime/gmime-filter.h> #include <gmime/gmime-stream.h> #include <gmime/gmime-message.h> #include <pan/general/string-view.h> diff -U5 -p -r pan-0.135/pan/usenet-utils/text-massager.cc pan-0.135-altered/pan/usenet-utils/text-massager.cc --- pan-0.135/pan/usenet-utils/text-massager.cc 2011-05-29 06:19:51.000000000 -0700 +++ pan-0.135-altered/pan/usenet-utils/text-massager.cc 2012-04-21 15:27:17.904959502 -0700 @@ -19,15 +19,14 @@ #include <config.h> #include <vector> #include <map> #include <cstring> -#include <glib.h> extern "C" { -#include <glib/gi18n.h> + #include <glib.h> + #include <glib/gi18n.h> } -#include <glib/gunicode.h> #include "text-massager.h" #include <pan/general/log.h> using namespace pan; TextMassager :: TextMassager ():