Bug#530419: kwalletmanager: passwords with quotes in their name don't export/import
Package: kwalletmanager
Version: 4:4.2.2-1
Severity: normal
To replicate:
1) execute "kwalletmanager"
2) click on wallet icon in notification area
3) choose "File > New Wallet..." from KDE Wallet Manager window's menu bar
4) name wallet "test" and click OK
5) choose password "test" and choose "Create"
6) expand "Passwords" folder
7) right-click "Passwords" sub-folder and choose "New"
8) in dialog enter (with doublequotes): this "is" test
9) from file menu choose "Export..." and export to /tmp/test.xml
10) examine test.xml, it should have improperly quoted attribute
in line 5's password node:
<wallet name="test">
<folder name="Form Data">
</folder>
<folder name="Passwords">
<password name="this "is" test"></password>
</folder>
</wallet>
11) from file menu choose "Import XML..." and choose /tmp/test.xml
12) should see dialog "Error reading XML file 'file:///tmp/test.xml' for input"
>From looking at kdeutils-4.2.2/kwallet/kwalleteditor.cpp:1101 it looks like the XML attributes are encoded via Qt::escape which will escape <, >, and & but not double-quotes.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (990, 'testing'), (800, 'unstable'), (700, 'experimental'), (500, 'stable')
Architecture: i386 (i686)
Kernel: Linux 2.6.29
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages kwalletmanager depends on:
ii kdebase-runtime 4:4.2.2-1 runtime components from the offici
ii kdelibs5 4:4.2.2-2 core libraries for all KDE 4 appli
ii libc6 2.9-4 GNU C Library: Shared libraries
ii libqt4-dbus 4.5.1-2 Qt 4 D-Bus module
ii libqt4-qt3support 4.5.1-2 Qt 3 compatibility library for Qt
ii libqt4-xml 4.5.1-2 Qt 4 XML module
ii libqtcore4 4.5.1-2 Qt 4 core module
ii libqtgui4 4.5.1-2 Qt 4 GUI module
ii libstdc++6 4.4.0-5 The GNU Standard C++ Library v3
kwalletmanager recommends no packages.
kwalletmanager suggests no packages.
-- no debconf information
Reply to: