File: Try-alternative-cookie-names.patch

package info (click to toggle)
editmoin 1.17-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 192 kB
  • ctags: 121
  • sloc: python: 832; makefile: 3
file content (41 lines) | stat: -rw-r--r-- 1,531 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
From: Andy Whitcroft <apw@ubuntu.com>
Date: Wed, 23 Nov 2016 12:32:25 +0100
Subject: Try alternative cookie names

Current moin versions use MOIN_SESSION_80_ROOT or MOIN_SESSION_443_ROOT cookie
names. Try these before the standard MOIN_SESSION cookie.

Bug: https://launchpad.net/bugs/801284
---
 editmoin | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/editmoin b/editmoin
index c121393..262c825 100755
--- a/editmoin
+++ b/editmoin
@@ -458,12 +458,22 @@ def edit(url, template=None, editfile_func=editfile):
         # Moin >= 1.7
         cookiename, cookievalue = get_session_cookie(user, url)
         urlopener = get_urlopener(url, cookievalue, cookiename)
+        moinfile = fetchfile(urlopener, url, cookievalue, template)
     else:
         # Moin < 1.7
         cookievalue = get_id(url)
-        urlopener = get_urlopener(url, cookievalue)
+        moinfile = None
+        for cookiename in ("MOIN_SESSION_80_ROOT", "MOIN_SESSION_443_ROOT"):
+            try:
+                urlopener = get_urlopener(url, cookievalue, cookiename)
+                moinfile = fetchfile(urlopener, url, cookievalue, template)
+                break
+            except:
+                pass
+        if not moinfile:
+            urlopener = get_urlopener(url, cookievalue)
+            moinfile = fetchfile(urlopener, url, cookievalue, template)
 
-    moinfile = fetchfile(urlopener, url, cookievalue, template)
     try:
         page_edited = editfile_func(moinfile)
         if page_edited: