|
|
@@ -1,70 +0,0 @@ |
|
|
|
Upstream: Yes |
|
|
|
Source: https://github.com/AGProjects/python3-xcaplib/commit/066759cf355b152375767bee4c3858dc0b8087e4 |
|
|
|
|
|
|
|
From 066759cf355b152375767bee4c3858dc0b8087e4 Mon Sep 17 00:00:00 2001 |
|
|
|
From: Worawut Boonpeang <worawut@ag-projects.com> |
|
|
|
Date: Fri, 4 Dec 2020 13:49:54 +0000 |
|
|
|
Subject: [PATCH] xcaplib (Python3) work with eventlib |
|
|
|
|
|
|
|
--- |
|
|
|
xcaplib/green.py | 4 +++- |
|
|
|
xcaplib/xcapclient.py | 10 ++++++++-- |
|
|
|
2 files changed, 11 insertions(+), 3 deletions(-) |
|
|
|
|
|
|
|
diff --git a/xcaplib/green.py b/xcaplib/green.py |
|
|
|
index 237d9d8..d01ee11 100644 |
|
|
|
--- a/xcaplib/green.py |
|
|
|
+++ b/xcaplib/green.py |
|
|
|
@@ -2,6 +2,8 @@ |
|
|
|
from eventlib.green import socket, ssl, httplib, urllib2 |
|
|
|
from xcaplib import httpclient |
|
|
|
from xcaplib import client |
|
|
|
+import urllib |
|
|
|
+import http |
|
|
|
|
|
|
|
|
|
|
|
class HTTPConnection(httplib.HTTPConnection): |
|
|
|
@@ -22,7 +24,7 @@ def http_open(self, req): |
|
|
|
|
|
|
|
class HTTPSHandler(urllib.request.HTTPSHandler): |
|
|
|
def https_open(self, req): |
|
|
|
- return self.do_open(HTTPSConnection, req) |
|
|
|
+ return self.do_open(http.client.HTTPSConnection, req) |
|
|
|
|
|
|
|
|
|
|
|
class HTTPClient(httpclient.HTTPClient): |
|
|
|
diff --git a/xcaplib/xcapclient.py b/xcaplib/xcapclient.py |
|
|
|
index cd409df..384c237 100755 |
|
|
|
--- a/xcaplib/xcapclient.py |
|
|
|
+++ b/xcaplib/xcapclient.py |
|
|
|
@@ -129,6 +129,8 @@ def setup_parser_request(parser): |
|
|
|
parser.add_option('--etag', help="perform a conditional operation", metavar='ETAG') |
|
|
|
parser.add_option('--add-header', dest='headers', |
|
|
|
action='append', default=[], help=optparse.SUPPRESS_HELP) |
|
|
|
+ parser.add_option("--eventlib", dest='eventlib_enable', |
|
|
|
+ help="Enables non-blocking mode using eventlib library") |
|
|
|
parser.add_option("-i", dest='input_filename', |
|
|
|
help="source file for the PUT request; default is <stdin>") |
|
|
|
parser.add_option("-o", dest='output_filename', |
|
|
|
@@ -366,7 +368,11 @@ def update_options_from_config(options): |
|
|
|
setattr(options, key, value) |
|
|
|
|
|
|
|
def parse_args(): |
|
|
|
- argv = sys.argv[1:] |
|
|
|
+ argv = None |
|
|
|
+ if "--eventlib" in sys.argv[1:]: |
|
|
|
+ argv = sys.argv[2:] |
|
|
|
+ else: |
|
|
|
+ argv = sys.argv[1:] |
|
|
|
|
|
|
|
if not argv: |
|
|
|
sys.exit('Type %s -h for help.' % sys.argv[0]) |
|
|
|
@@ -496,7 +502,7 @@ def get_exit_code(http_error): |
|
|
|
return 3 |
|
|
|
|
|
|
|
def main(): |
|
|
|
- if sys.argv[0].endswith('-eventlib'): |
|
|
|
+ if "--eventlib" in sys.argv[1:]: |
|
|
|
from xcaplib.green import XCAPClient as client_class |
|
|
|
else: |
|
|
|
client_class = XCAPClient |