[projects/pld-builder.new] Catch corrupted queue.gz errors.
arekm
arekm at pld-linux.org
Sun Nov 23 18:35:24 CET 2014
commit 3b478581427dc16326e1434bcf25e76b1dca9424
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Sun Nov 23 18:35:18 2014 +0100
Catch corrupted queue.gz errors.
PLD_Builder/request_fetcher.py | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
---
diff --git a/PLD_Builder/request_fetcher.py b/PLD_Builder/request_fetcher.py
index a677a71..9877cde 100644
--- a/PLD_Builder/request_fetcher.py
+++ b/PLD_Builder/request_fetcher.py
@@ -18,6 +18,7 @@ import gpg
import request
import loop
import socket
+import struct
from acl import acl
from bqueue import B_Queue
from config import config, init_conf
@@ -74,7 +75,12 @@ def fetch_queue(control_url):
f.close()
sio.seek(0)
f = gzip.GzipFile(fileobj = sio)
- (signers, body) = gpg.verify_sig(f.read())
+ try:
+ fdata = f.read()
+ except struct.error, e:
+ log.alert("corrupted fetched queue.gz file")
+ sys.exit(1)
+ (signers, body) = gpg.verify_sig(fdata)
u = acl.user_by_email(signers)
if u == None:
log.alert("queue.gz not signed with signature of valid user: %s" % signers)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/projects/pld-builder.new.git/commitdiff/3b478581427dc16326e1434bcf25e76b1dca9424
More information about the pld-cvs-commit
mailing list