Commit Graph

216 Commits (acmev1)

Author SHA1 Message Date
Richard Körber 74750a9f88 Add a RFC3339 parser 2015-12-26 18:00:07 +01:00
Richard Körber 5e699df6c1 [maven-release-plugin] prepare for next development iteration 2015-12-25 14:51:27 +01:00
Richard Körber 4414abb1d2 [maven-release-plugin] prepare release v0.1 2015-12-25 14:51:27 +01:00
Richard Körber fefc71b21f Use GenericTokenChallenge for unknown challenge types with token 2015-12-24 16:30:51 +01:00
Richard Körber 9b458fb2b6 Add a GenericTokenChallenge. Remove boilerplate code. 2015-12-24 16:29:35 +01:00
Richard Körber ade0207d6d Clean out challenge API 2015-12-24 16:28:57 +01:00
Richard Körber 0f56583c18 Add ProofOfPossession challenge 2015-12-24 16:24:34 +01:00
Richard Körber 34c7950c75 Use PublicJsonWebKey instead of JsonWebKey 2015-12-24 16:13:16 +01:00
Richard Körber f87dba266f ClaimBuilder also returns a Map representation 2015-12-24 16:12:35 +01:00
Richard Körber 0e7da2a1d0 Add TLS-SNI challenge 2015-12-22 23:34:16 +01:00
Richard Körber 37dcb1f64b Fix copy&paste error 2015-12-22 23:30:22 +01:00
Richard Körber 2898642ebf Do not remove location data from Registration on modify 2015-12-21 23:34:17 +01:00
Richard Körber b00114ad88 Add contact-based recovery 2015-12-21 01:32:30 +01:00
Richard Körber 8168e6efc7 Extract Status enum. Make Authorization use it. 2015-12-21 00:28:39 +01:00
Richard Körber 41dabd0cfd Add updateAuthorization() method to get the current authorization state 2015-12-21 00:10:03 +01:00
Richard Körber 8b0f266455 Rename updateAccount to modifyAccount
Reserve the term "update" for updating DTOs to the current server state
2015-12-20 23:24:45 +01:00
Richard Körber 7d9d851046 Make DTOs and Challenges serializable 2015-12-20 22:46:50 +01:00
Richard Körber 5b5500d373 Show challenge type value in javadoc 2015-12-20 22:46:34 +01:00
Richard Körber 46daaa8cfd Check parameters and types
Test for null pointers and invalid parameters.
Check if json content matches challenge type.
Enforce PublicKey when no private key instance should be used.
2015-12-20 22:46:34 +01:00
Richard Körber 06a600fec1 Registration contact is an URI now 2015-12-20 22:46:34 +01:00
Richard Körber 3d49f8d094 Review AcmeExceptions 2015-12-20 22:46:34 +01:00
Richard Körber ac2af16950 Check connection state 2015-12-20 22:46:34 +01:00
Richard Körber 1d34b07b6d Add a special exception type for 'unauthorized' errors 2015-12-20 22:46:34 +01:00
Richard Körber 9e93327818 Add support for certificate revocation 2015-12-20 13:09:10 +01:00
Richard Körber 6b1797c453 Remove account parameter where not used 2015-12-20 12:39:44 +01:00
Richard Körber f4cd15da65 Constructor for creating a Registration with a location URI 2015-12-20 12:21:20 +01:00
Richard Körber db927300e9 Add method to restore a Challenge 2015-12-20 12:18:24 +01:00
Richard Körber c97392236d Use Replay-Nonce header from directory request
If there is a Replay-Nonce on the first GET request on the directory resource,
use it. It saves us a HEAD request before the first POST request.
2015-12-19 17:35:53 +01:00
Richard Körber 1e1056d692 DnsChallenge: return digest for TXT record 2015-12-19 16:38:32 +01:00
Richard Körber becab450d8 Fix connection error 2015-12-19 14:46:50 +01:00
Richard Körber 9bcd5a2dd4 Add full documentation 2015-12-19 14:06:09 +01:00
Richard Körber afaf286a49 Lets Encrypt SSLSocketFactory is a singleton 2015-12-18 00:34:19 +01:00
Richard Körber dba96d0531 Fix broken javadocs, again... 2015-12-18 00:32:09 +01:00
Richard Körber 251e5af317 Add unit tests for AbstractAcmeClient 2015-12-18 00:31:55 +01:00
Richard Körber 4c02421114 Some minor ACME compliance fixes 2015-12-18 00:29:59 +01:00
Richard Körber 97d0856a04 Log HTTP headers in debug mode 2015-12-18 00:29:33 +01:00
Richard Körber e6cfc3d159 Check status of directory GET request 2015-12-18 00:29:15 +01:00
Richard Körber 5fc97fab34 Evaluate terms-of-service header. Agreement property is now type URI. 2015-12-16 00:53:31 +01:00
Richard Körber 7ecf5674c9 Improve HTTP status code and JSON problem handling 2015-12-16 00:51:57 +01:00
Richard Körber e3ff6043df More debug log output 2015-12-16 00:50:55 +01:00
Richard Körber 943f604a21 Get link relations from response header 2015-12-16 00:50:12 +01:00
Richard Körber 575902bd60 Extract X509Certificate for testing 2015-12-16 00:47:09 +01:00
Richard Körber daf84bd3c0 Unit test for GenericAcmeClient 2015-12-16 00:46:41 +01:00
Richard Körber 045968a423 Split Connection into interface and implementation 2015-12-16 00:46:16 +01:00
Richard Körber a775cf868f Move Let's Encrypt provider to main module.
There is no good reason to place providers in separate modules.
2015-12-16 00:45:32 +01:00
Richard Körber c45c29226e Simplified challenge creation 2015-12-16 00:45:14 +01:00
Richard Körber 5c68fcae40 Fix javadoc errors 2015-12-16 00:44:31 +01:00
Richard Körber 0f4d5e114d Refactor, use new HttpConnector for connecting to server 2015-12-13 19:37:27 +01:00
Richard Körber b12ee4a28a Add unit tests for AcmeClientProviders 2015-12-13 19:36:24 +01:00
Richard Körber 62ed304f3a Refactor, make AbstractAcmeClientProvider easier to use (and test) 2015-12-13 19:35:21 +01:00
Richard Körber 7097f23a2d Add unit tests for acme4j-client 2015-12-13 19:34:58 +01:00
Richard Körber 1267684614 Fail if no keypair is set 2015-12-13 19:25:57 +01:00
Richard Körber 535543e7b1 Check content-type header 2015-12-13 19:25:35 +01:00
Richard Körber 618dc27fbf Validate nonce header 2015-12-13 19:25:28 +01:00
Richard Körber fbadeb62bf Rename readResourceMap to readDirectory 2015-12-13 19:25:18 +01:00
Richard Körber fb3f56921d Avoid parameter variable name clashes 2015-12-13 19:24:28 +01:00
Richard Körber 26b86b8f72 Fail if auth key is read without prior authorization 2015-12-13 19:22:18 +01:00
Richard Körber 2d5261f592 Use String for expiry date, as Date would require joda-time 2015-12-13 19:21:35 +01:00
Richard Körber 04fe570811 Return null if no URI is set 2015-12-13 19:21:01 +01:00
Richard Körber b7af1060cd Add unit tests for AcmeClientFactory 2015-12-13 19:20:30 +01:00
Richard Körber 0410257042 Throw an AcmeException if the acme URI cannot be resolved 2015-12-13 19:20:14 +01:00
Richard Körber 298dfbc161 Add unit tests for Authorization 2015-12-13 19:19:08 +01:00
Richard Körber 3ee7a06e6f Extend findCombination behavior.
The mandant passes in all challenge types it supports, and the method returns the shortest combination required for validation.
2015-12-13 19:18:39 +01:00
Richard Körber 5459676431 Add unit tests for ClaimBuilder 2015-12-13 19:17:26 +01:00
Richard Körber 1e9855bf05 Use URI instead of plain string parsing 2015-12-10 23:45:12 +01:00
Richard Körber 7e07a0e2e4 Project start 2015-12-09 01:24:03 +01:00