[oe-commits] org.oe.dev oestats-client.bbclass: switch to multipart/form-data (prepare for sending logs)

jeremy_laine commit oe at amethyst.openembedded.net
Sun May 18 14:46:07 UTC 2008


oestats-client.bbclass: switch to multipart/form-data (prepare for sending logs)

Author: jeremy_laine at openembedded.org
Branch: org.openembedded.dev
Revision: a78e816f6e4e3aabddc9840ba947d311382f2da1
ViewMTN: http://monotone.openembedded.org/revision/info/a78e816f6e4e3aabddc9840ba947d311382f2da1
Files:
1
classes/oestats-client.bbclass
Diffs:

#
# mt diff -reb9d3f4c234d73dca5fa92f4ba40d807a6253b54 -ra78e816f6e4e3aabddc9840ba947d311382f2da1
#
#
#
# patch "classes/oestats-client.bbclass"
#  from [e73c7ea6f42f1cdac24bec988ca6b2b4cd1022b7]
#    to [df180645b7696ecae1f6c0fcda529fec22095a33]
#
============================================================
--- classes/oestats-client.bbclass	e73c7ea6f42f1cdac24bec988ca6b2b4cd1022b7
+++ classes/oestats-client.bbclass	df180645b7696ecae1f6c0fcda529fec22095a33
@@ -19,12 +19,30 @@ def oestats_send(server, action, vars = 
 	return f.read()
 	
 def oestats_send(server, action, vars = {}):
-	import httplib, urllib
+	import httplib
 
-	params = urllib.urlencode(vars)
-	headers = {"Content-type": "application/x-www-form-urlencoded"}
+	# build body
+	output = []
+	bound = '----------ThIs_Is_tHe_bouNdaRY_$'
+	for key in vars:
+		assert vars[key]
+		output.append('--' + bound)
+		output.append('Content-Disposition: form-data; name="%s"' % key)
+		output.append('')
+		output.append(vars[key])
+	output.append('--' + bound + '--')
+	output.append('')
+	body = "\r\n".join(output)
+
+	# build headers
+	headers = {
+		"User-agent": "oestats-client/0.1",
+		"Content-type": "multipart/form-data; boundary=%s" % bound,
+		"Content-length": str(len(body))}
+
+	# send request
 	conn = httplib.HTTPConnection(server)
-	conn.request("POST", action, params, headers)
+	conn.request("POST", action, body, headers)
 	response = conn.getresponse()
 	data = response.read()
 	conn.close()
@@ -88,7 +106,7 @@ def oestats_task(server, d, task, status
 		'revision': bb.data.getVar('PR', d, True),
 		'task': task,
 		'status': status,
-		'time': elapsed,
+		'time': str(elapsed),
 	})
 
 addhandler oestats_eventhandler






More information about the Openembedded-commits mailing list