Bug 193486 - problem with setting, getting cookies
Summary: problem with setting, getting cookies
Status: RESOLVED WORKSFORME
Alias: None
Product: konqueror
Classification: Applications
Component: kcookiejar (show other bugs)
Version: 4.2.3
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2009-05-21 13:00 UTC by lunter
Modified: 2010-09-18 07:20 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description lunter 2009-05-21 13:00:30 UTC
Version:           4.2.3 (using KDE 4.2.3)
OS:                MS Windows
Installed from:    MS Windows

A)
1. Set cookie (without 'secure' parameter) from http://testdomain.com/
2. Try to get it from https://testdomain.com/
3. You can not.
4. IE, FF, Opera, Safari, Chrome can!

----

B)
1. Set cookie (without 'secure' parameter) from https://testdomain.com/
2. Try to get it from http://testdomain.com/
3. You can not.
4. IE, FF, Opera, Safari, Chrome can!

----

C)
1. Set cookie from http://testdomain.com/
2. Try to get it from http://testdomain.com:81/
3. You can not.
4. IE, FF, Opera, Safari, Chrome can!
Comment 1 lunter 2009-05-21 13:19:06 UTC
D)
<script>
 document.cookie='a=test;expires='+new Date(0).toUTCString()
 alert(document.cookie)
</script>

Konqueror alerts: a=test but should be empty string
IE, FF, Opera, Safari, Chrome alert empty string
Comment 2 Dawit Alemayehu 2010-09-18 07:20:43 UTC
With the exception of condition (C) involving different ports, all the above conditions work fine in KDE 4.5 and higher. We have a test condition for all the cases you listed above. See the "## Check secure cookie handling" section in the unit test file below:

http://websvn.kde.org/trunk/KDE/kdelibs/kioslave/http/kcookiejar/tests/cookie_rfc.test?view=markup

Result of running the unittest:

$ ./kioslave/http/kcookiejar/tests/kcookiejartest
********* Start testing of KCookieJarTest *********
Config: Using QTest library 4.6.3, Qt 4.6.3
PASS   : KCookieJarTest::initTestCase()
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check setting of cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if clearing cookie jar works
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check cookie syntax
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if deleting cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if updating cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if multiple cookies work
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if path restrictions work
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if default path works
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check if cookies are correctly ordered based on path
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check cookies with same name but different paths
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check secure cookie handling
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #1
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #2
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #3
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #4
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #5
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #6
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #7
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check domain restrictions #8
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check cookies with IP address hostnames
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check expiration dates for the Y2K38 problem
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) ## Check non-standard expiration dates (BR# 145244)
QDEBUG : KCookieJarTest::testCookieFile(cookie.test) /usr/local/src/KDE/trunk/kdelibs/kioslave/http/kcookiejar/tests//cookie.test OK
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check setting of cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if clearing cookie jar works
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check cookie syntax
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if deleting cookies works #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if updating cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if multiple cookies work
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if we prepend domain with a dot
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if multiple cookies on a single line work
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## FIXME
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if path restrictions work
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if default path works
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check if cookies are correctly ordered based on path
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check cookies with same name but different paths
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check secure cookie handling
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #2
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #3
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #4
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #5
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #6
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) ## Check domain restrictions #7
QDEBUG : KCookieJarTest::testCookieFile(cookie_rfc.test) /usr/local/src/KDE/trunk/kdelibs/kioslave/http/kcookiejar/tests//cookie_rfc.test OK
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check setting of cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if clearing cookie jar works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check cookie syntax
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if deleting cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if updating cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if multiple cookies work
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if path restrictions work
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if default path works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if cookies are correctly ordered based on path
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check cookies with same name but different paths
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check secure cookie handling
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #2
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #3
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #4
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #5
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #6
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #7
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## RFC Cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check setting of cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check cookie syntax
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if deleting cookies works #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if updating cookies works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if multiple cookies work
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if path restrictions work
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if default path works
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check if cookies are correctly ordered based on path
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check cookies with same name but different paths
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check secure cookie handling
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #2
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #3
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #4
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #5
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #6
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check domain restrictions #7
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check results
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check results for RFC cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check result after saving
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check result for RFC cookies after saving
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check result after saving a second time
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) ## Check result for rfc cookies after saving a second time
QDEBUG : KCookieJarTest::testCookieFile(cookie_saving.test) /usr/local/src/KDE/trunk/kdelibs/kioslave/http/kcookiejar/tests//cookie_saving.test OK
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check CookieGlobalAdvice setting
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Treat all cookies as session cookies
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check host-based domain policies
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check resetting of domain policies
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check domain policies
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check overriding of domain policies #1
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check overriding of domain policies #2
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check resetting of domain policies
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check overriding of domain policies #3
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check overriding of domain policies #4
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) ## Check interaction with session policy
QDEBUG : KCookieJarTest::testCookieFile(cookie_settings.test) /usr/local/src/KDE/trunk/kdelibs/kioslave/http/kcookiejar/tests//cookie_settings.test OK
PASS   : KCookieJarTest::testCookieFile()
PASS   : KCookieJarTest::testParseUrl()
PASS   : KCookieJarTest::testExtractDomains()
PASS   : KCookieJarTest::cleanupTestCase()
Totals: 5 passed, 0 failed, 0 skipped
********* Finished testing of KCookieJarTest ********

Since there is a pending ticket for the port related issue, I am closing this bug report. Feel free to reopen if you can duplicate the issue with current version of KDE (4.5 or higher)...