From e493cf3d8761914d90924251d40c37ccee876abd Mon Sep 17 00:00:00 2001 From: Andy Grover Date: Sep 10 2013 23:08:40 +0000 Subject: update to 0.6-1 Signed-off-by: Andy Grover --- diff --git a/.gitignore b/.gitignore index ddc7f63..627d6b7 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ /targetd-0.2.4.tar.gz /targetd-0.3.tar.gz /targetd-0.3.1.tar.gz +/targetd-0.6.tar.gz +/targetd-0.6.1.tar.gz diff --git a/sources b/sources index d7dd140..74e492a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -cf27a2142f7c432171f73d930ffd40ab targetd-0.3.1.tar.gz +c40ba0dd7c5f65e1bd2cb80872aeeb17 targetd-0.6.1.tar.gz diff --git a/targetd-require-password.patch b/targetd-require-password.patch deleted file mode 100644 index c2db299..0000000 --- a/targetd-require-password.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit bf6e05e1ebb3e36de4e1e5641046a6adc648dd5b -Author: Andy Grover -Date: Tue Apr 16 12:59:31 2013 -0700 - - Fail if password not set in config file - - Signed-off-by: Andy Grover - -diff --git a/targetd b/targetd -index 9e85e16..cd5cb2b 100755 ---- a/targetd -+++ b/targetd -@@ -43,7 +43,7 @@ config_path = "/etc/target/targetd.yaml" - default_config = dict( - pool_name = "vg-targetd", - user = "admin", -- password = "targetd", -+ # security: no default password - target_name = "iqn.2003-01.org.linux-iscsi.%s:targetd" % socket.gethostname(), - ssl = False, - ssl_cert = "/etc/target/targetd_cert.pem", -@@ -64,6 +64,10 @@ if os.getuid() != 0: - print "targetd must run as root." - sys.exit(-1) - -+if not config.get('password', None): -+ print "password not set in %s, aborting" % config_path -+ sys.exit(-1) -+ - # fail early if can't access vg - test_vg = lvm.vgOpen(config['pool_name'], "w") - test_vg.close() diff --git a/targetd-use-std-ssl.patch b/targetd-use-std-ssl.patch deleted file mode 100644 index b3e0596..0000000 --- a/targetd-use-std-ssl.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff --git a/targetd b/targetd -index 6e51941..9e85e16 100755 ---- a/targetd -+++ b/targetd -@@ -34,7 +34,7 @@ import yaml - import time - from targetcli import UIRoot - from configshell import ConfigShell --import tlslite -+import ssl - - setproctitle.setproctitle("targetd") - -@@ -400,31 +400,17 @@ class TargetHandler(BaseHTTPRequestHandler): - class ThreadedHTTPServer(ThreadingMixIn, HTTPServer, object): - """Handle requests in a separate thread.""" - --class TLSThreadedHTTPServer(tlslite.TLSSocketServerMixIn, ThreadedHTTPServer): -+class TLSThreadedHTTPServer(ThreadedHTTPServer): - """Also use TLS to encrypt the connection""" - -- def __init__(self, *args, **kwargs): -- super(TLSThreadedHTTPServer, self).__init__(*args, **kwargs) -- s = open(config['ssl_cert']).read() -- x509 = tlslite.X509() -- x509.parse(s) -- self.certChain = tlslite.X509CertChain([x509]) -- -- s = open(config['ssl_key']).read() -- self.privateKey = tlslite.parsePEMKey(s, private=True) -- -- self.sessionCache = tlslite.SessionCache() -- -- def handshake(self, tlsConnection): -- try: -- tlsConnection.handshakeServer(certChain=self.certChain, -- privateKey=self.privateKey, -- sessionCache=self.sessionCache) -- tlsConnection.ignoreAbruptClose = True -- return True -- except tlslite.TLSError, error: -- print "Handshake failure:", str(error) -- return False -+ def finish_request(self, sock, addr): -+ sockssl = ssl.wrap_socket( -+ sock, server_side=True, -+ keyfile=config["ssl_key"], -+ certfile=config["ssl_cert"], -+ ciphers="HIGH:-aNULL:-eNULL:-PSK", -+ suppress_ragged_eofs=True) -+ return self.RequestHandlerClass(sockssl, addr, self) - - - if config['ssl']: diff --git a/targetd.spec b/targetd.spec index 2a67d11..97a52d1 100644 --- a/targetd.spec +++ b/targetd.spec @@ -2,18 +2,16 @@ Name: targetd License: GPLv3 Group: System Environment/Libraries Summary: Service to make storage remotely configurable -Version: 0.3.1 -Release: 7%{?dist} +Version: 0.6.1 +Release: 1%{?dist} URL: https://github.com/agrover/targetd Source: https://github.com/downloads/agrover/%{name}/%{name}-%{version}.tar.gz Source1: targetd.service Source2: targetd.yaml -Patch0: targetd-use-std-ssl.patch -Patch1: targetd-require-password.patch BuildArch: noarch -BuildRequires: systemd +BuildRequires: systemd, python-devel Requires: targetcli PyYAML python-setproctitle -Requires: python-lvm >= 1.9 +Requires: lvm2-python-libs >= 2.02.99, nfs-utils, btrfs-progs Requires(post): systemd Requires(preun): systemd Requires(postun): systemd @@ -27,21 +25,19 @@ those volumes over iSCSI. %prep %setup -q -%patch0 -p1 -%patch1 -p1 %build +%{__python} setup.py build gzip --stdout targetd.8 > targetd.8.gz %install -mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_mandir}/man8/ mkdir -p %{buildroot}%{_unitdir} mkdir -p %{buildroot}%{_sysconfdir}/target/ -install -m 755 targetd %{buildroot}%{_bindir} install -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/targetd.service install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/target/targetd.yaml install -m 644 targetd.8.gz %{buildroot}%{_mandir}/man8/ +%{__python} setup.py install --skip-build --root %{buildroot} %post if [ $1 -eq 1 ] ; then @@ -66,11 +62,19 @@ fi %files %{_bindir}/targetd %{_unitdir}/targetd.service +%{python_sitelib}/* %doc LICENSE README.md API.md client %{_mandir}/man8/targetd.8.gz %config(noreplace) %{_sysconfdir}/target/targetd.yaml %changelog +* Thu Aug 8 2013 Andy Grover 0.6.1-1 +- Update to latest version, make needed changes +- Drop patches: + * require-password.patch + * use-std-ssl.patch +- Change requires from python-lvm to lvm2-python-libs + * Mon Aug 5 2013 Peter Robinson 0.3.1-7 - Add systemd to BuildReq to fix FTBFS