diff --git a/certclient.py b/certclient.py index 3490d43..ce8b842 100755 --- a/certclient.py +++ b/certclient.py @@ -20,6 +20,11 @@ parser.add_argument( dest='client_key', action='store', required=True) +parser.add_argument( + '--csr', + dest='csr', + action='store', + required=True) parser.add_argument( '--server', dest='server', @@ -30,7 +35,7 @@ FLAGS = parser.parse_args() class CertClient(object): - def __init__(self, server, ca_cert, client_cert, client_key): + def __init__(self, server, ca_cert, client_cert, client_key, csr): self._session = requests.Session() self._session.verify = ca_cert self._session.cert = (client_cert, client_key) @@ -38,9 +43,11 @@ class CertClient(object): 'Content-Type': 'application/x-pem-file', }) self._server = server + self._csr = csr def Request(self): - self._session.post(self._server, data='foo') + with open(self._csr, 'r') as fh: + self._session.post(self._server, data=fh.read()) def main(): @@ -48,7 +55,8 @@ def main(): FLAGS.server, FLAGS.ca_cert, FLAGS.client_cert, - FLAGS.client_key) + FLAGS.client_key, + FLAGS.csr) client.Request()