Commit Graph
7630 Commits
Author SHA1 Message Date
yomnaandohemorange 72fa27514e fix for issue 4132: increasing server_names_hash_bucket_size if necessary (#4496)
* increases server_names_hash_bucket_size if it's too low in your nginx conf

* switching from k,v pairwise indices -> inner_line

* simply using bucket_directive
2017-04-27 10:46:33 -07:00
ohemorangeandBrad Warren 1611df4120 Allow empty nginx blocks (#4555)
* modify test config file to allow valid config that fails to parse in parser.py

* make failing tests pass by fixing the problem
2017-04-26 18:44:06 -07:00
Noah SwartzandBrad Warren 5f9c6539d5 make a list of contributors (#4508)
* make a list of contributors

* make all links websites

* alphebetize and remove extra file

* remove ref to contributors

* add one more!

* sort using linux sort command
2017-04-26 14:57:23 -07:00
schoenandBrad Warren 0c4e813a72 Demote PEM generation to logger.debug (#4549) 2017-04-26 10:54:40 -07:00
Zach ShepherdandBrad Warren b41472afce Enhance display.util to support input validation (#4372)
* display: support validation of user input

To avoid each caller of `display.input` and `display.directory_select`
needing to implement validation logic, this allows for a validator to be
supplied as a part of the call.

Following the existing pattern from `webroot`, this validator is expected
to throw a `Error` when it encounters invalid input. The user then
receives a `notification` is re-prompted.

Testing Done:
 * tox -e py27
 * tox -e lint

* plugins: update webroot to use display's validation functionality

This change updates the webroot plugin to use the now-built-in validation
functionality in display, reducing duplicated code.

Testing Done:
 * tox -e py27
 * tox -e lint

* display: move validation logic to ops

To avoid adding complexity to `IDisplay` methods, move validation logic
to helper methods in `display.ops`.

Testing Done:
 * tox -e py27
 * tox -e lint
2017-04-24 17:36:00 -07:00
Noah SwartzandGitHub b079d0da2f Merge pull request #4542 from certbot/dnstypo
fix the word plugin
2017-04-24 13:10:48 -07:00
Kubilay KocakandBrad Warren 419c541b18 Update FreeBSD package entries (#4538)
Add port/package URL for py-acme

Use Freshports URL's instead of SVNWeb (repository) links as they provide (binary) package installation installation as well as further port/package information such as vulnerabilities, revision history and bug reports for each port respectively.
2017-04-24 11:58:00 -07:00
Noah Swartz c6da818d93 fix the word plugin 2017-04-24 11:54:20 -07:00
Jacob Hoffman-AndrewsandBrad Warren b3116af5b4 Add url and kid to jws. (#4340)
* Add url and kid to jws.

This will be required in order to implement the latest ACME spec, which uses
these protected header fields.

* Add comments and fix lint.

* Enforce mutual exclusivity of jwk and kid.
2017-04-21 18:49:57 -07:00
Noah SwartzandGitHub fff34fc790 Merge pull request #4509 from certbot/challenges-docs
Attempt to document challenge types
2017-04-20 17:59:19 -07:00
Yen Chi HsuanandBrad Warren 779af8db1e Extend tools/venv3.sh to support full certbot development (#4532) 2017-04-20 09:09:20 -07:00
Brad WarrenandGitHub 372d201111 use say now that if QUIET statement was moved (#4530) 2017-04-19 14:11:18 -07:00
Josh SorefandBrad Warren c13b2eae9b Make it easier to honor --quiet (#4292)
* say -- echo which honors quiet

* error -- echo which does not honor quiet

* switch non error echos to say

* switch error echos to error

* run letsencrypt-auto-source/build.py
2017-04-19 09:11:38 -07:00
Jacob Hoffman-AndrewsandBrad Warren d54cb3c59d Improve Account.repr() (#4325)
* Include more detail in Account's repr.

In particular, regr and meta.

* Fix test.

* Review feedback.

* Lint

* Test prefix only.
2017-04-18 17:09:22 -07:00
Arthur GautierandBrad Warren b0600483fd interface: IConfig is missing fields used in client.py (#4453)
Signed-off-by: Arthur Gautier <baloo@gandi.net>
2017-04-18 11:18:56 -07:00
Brad WarrenandGitHub 36891033dd Set HOME if it's not defined in certbot-auto (#4503)
* set HOME if it's not defined

* use ~root rather than /root
2017-04-17 14:39:08 -07:00
Noah SwartzandGitHub 2bdf8cf505 Merge pull request #4492 from certbot/changelog_cleanup
fixed up the changelog
2017-04-17 13:38:55 -07:00
Noah Swartz 4c0e82f426 fix typo 2017-04-17 13:12:46 -07:00
Peter EckersleyandBrad Warren 1ed50497eb [certbot-auto]: "renew" implies --non-interactive (#4500) 2017-04-17 11:41:24 -07:00
Seth Schoen 5b6c3c2c29 Attempt to document challenge types 2017-04-14 16:01:55 -07:00
Erica PortnoyandGitHub ba0ac03205 Merge pull request #4374 from yan12125/py3-enable-boulder
This enables boulder integration tests for all Python 3 versions on Travis CI as well as fixes bugs identified by integration tests.
2017-04-14 12:58:29 -07:00
Noah SwartzandGitHub 227743b7e4 Merge pull request #4459 from St-Ranger/patch-1
Improved info for FreeBSD
2017-04-14 11:46:08 -07:00
Yen Chi Hsuan 031a8dd837 Fix nginx integration tests on Python 3 2017-04-15 02:34:06 +08:00
Yen Chi Hsuan 29d25f0915 Enable boulder tests on Python 3 2017-04-15 02:32:18 +08:00
Carl Michael SkogandPeter Eckersley f54280d9b9 Use binary flag when writing cert and key files (#4462)
* Use binary flag when writing cert and key files

Add binary flag to mode argument when opening files for writing key and
certificate files.
On Python 3 the data buffers use for writing are bytes objects not
strings, and the write fails accordingly.
As far as I understand, it the "b" flag will not hurt things in Python 2
either.

* Update the tests for RenewableCert::save_successor

Update the tests for RenewableCert::save_successor after changing
three  parameters to be called with bytes objects instead of strings.

Also, update the doc comment of the function.
2017-04-13 19:10:12 -07:00
St-RangerandGitHub d11443ac05 Missing word is inserted. 2017-04-13 20:36:32 -05:00
Noah SwartzandGitHub 8fea513dec Merge pull request #4455 from zjs/topic/zjs/developer-guide
Documentation improvements for plugin developers
2017-04-13 16:54:51 -07:00
Noah SwartzandGitHub 1ff117e2ec Merge pull request #4458 from truist/patch-1
Sort OS-with-packages list and add NetBSD
2017-04-13 16:31:03 -07:00
Noah SwartzandGitHub 6d0591f0db Merge pull request #4457 from Robotic-Brain/patch-2
Fixing Typo in README.rst (issues -> issued)
2017-04-13 15:25:22 -07:00
Noah SwartzandGitHub 71decfb773 Merge pull request #4456 from Robotic-Brain/patch-1
Fixing Typo in Readme.rst (identify -> identity)
2017-04-13 15:24:55 -07:00
Brad WarrenandGitHub bd8c31021a Logging setup before argument parsing (#4446)
Second part of #4443. Built on #4444. Fixes #3148.

This fixes an old problem with code logging messages before logging has been set up. How this works is explained in the docstring of certbot.log.pre_arg_setup.

* add memory handler

* Add exit_with_log_path

* add new_except_hook

* pre_arg_parse_setup++ and remove old except_hook

* Rewrite post_arg_setup

* test restricted permissions

* move changes to main

* Use .name of NamedTemporaryFile

* use better assertions

* set exc_info in except_hook

* Make post_arg_setup more robust

* final cleanup

* Add TempHandler

* undo main_test changes

* improve documentation

* use decorators instead of with for mock.patch

* add inline comment about logging.shutdown
2017-04-13 13:42:01 -07:00
Noah SwartzandGitHub c952af5c6a Merge pull request #4472 from l2dy/patch-1
Fix link in README.rst
2017-04-13 12:16:08 -07:00
Noah SwartzandBrad Warren 3381cc10ec fix 3664 (#4495) 2017-04-13 11:57:14 -07:00
Noah SwartzandGitHub 9f3e9e56a9 Merge pull request #4497 from certbot/star-link
Make sphinx happy
2017-04-13 09:48:18 -07:00
Noah SwartzandGitHub fa5ce60652 Merge pull request #4028 from jwm/jwm/3502_renew_hook_examples
add example of --renew-hook envvar values and hook script (#3502)
2017-04-13 09:40:58 -07:00
John Morrissey fef3262759 add example of --renew-hook envvar values and hook script (#3502) 2017-04-13 11:00:32 -04:00
Brad Warren 42d732d3c2 make sphinx happy 2017-04-12 18:38:45 -07:00
Peter EckersleyandGitHub fbaf145c29 "Renew" now ignores domains in cli.ini (#4479)
* "Renew" now ignores domains in cli.ini

* Document things slightly better

* fix variable names

* py3fix
2017-04-12 15:48:58 -07:00
Noah Swartz 28495b1336 fixed up the changelog 2017-04-11 16:57:42 -07:00
Noah SwartzandGitHub 07273e5d7e Merge pull request #4432 from certbot/contributing-common
Document tests/integration/_common.sh.
2017-04-10 19:15:18 -07:00
Alex JordanandBrad Warren dfd4d0c10e Document hook error handling (#4418)
* Document hook error handling

* Clarify wording around hook failure exit codes
2017-04-07 10:16:59 -07:00
Jacob Hoffman-Andrews a08e9599f5 Review feedback. 2017-04-07 10:15:52 -07:00
Yen Chi HsuanandBrad Warren 4b91f7fbbc Replace e.message with str(e) for Python 3 compatibility (#4416) 2017-04-07 09:58:19 -07:00
Jacob Hoffman-AndrewsandBrad Warren d557c39c99 Remove obsolete fields from Registration. (#4339)
Authorizations and certificates were in the original spec but have since been
deleted.
2017-04-07 09:52:12 -07:00
Ngo The TrungandBrad Warren 315b6d0cf1 Fix unorderable types error (#4409)
If the updated datetime collides, the comparator of heapq will move
onto the AuthorizationResource value and throws an "unorderable type"
error.

This adds an index value to the element tuple to ensure that they are
always strictly ordered.
2017-04-07 09:46:27 -07:00
Jacob Hoffman-AndrewsandBrad Warren cacee80c51 Move make_csr into acme.crypto_util (#4165)
It's relatively finicky to make a CSR appropriate to pass to poll_and_request_issuance. I think most users want to be able to give a list of domains and a private key, and get back a CSR. This branch adds that functionality to crypto_util.

Note that the two new functions take arguments, and return values, as PEM-encoded buffers. This is a departure from some existing ACME interfaces that take PyOpenSSL types. I've discussed with the Certbot team, and we agree that this is broadly the direction the ACME API should take, so that users of the module don't need to import PyOpenSSL themselves, or use its primitives.

* Add make_csr.

* accept privkey

* Tweak API.

* Remove make_csr from certbot package.

* Skip test in older Pythons.

* Move get_Extensions call under protection.

* Remove assertIn because not backwards-compatible.

* Fix encoding, and use PEM.

* Fix test

* Fix tests on py35.

* Fix error in test.

* Make import_csr_file always return PEM.

Also delete get_sans_from_csr (unused) and get_names_from_csr (newly unused).

* Fix function doc.

* Fix indent

* Fix call of obtain_certificate_from_Csr

* lint

* Handle review feedback.

* Fix test.
2017-04-07 09:43:33 -07:00
Brad WarrenandGitHub 2e8a5ef477 Call certbot client cb_client rather than acme_client (#4357)
In some sense, certbot.client.Client is an ACME client, but it's the not the client in the ACME library and this leads to confusion. Let's make what this is clear.

* call certbot client cb_client rather than acme_client

* update tests
2017-04-06 16:05:54 -07:00
Erica PortnoyandGitHub da1cfa85fc Update changelog for 0.13.0 release (#4476) 2017-04-06 12:07:17 -07:00
Erica PortnoyandGitHub 82f3f7523e Candidate 0.13.0 (#4475)
* Release 0.13.0

* Bump version to 0.14.0
2017-04-06 11:33:32 -07:00
Zero KingandGitHub 5259901d04 Fix link in README.rst 2017-04-06 11:02:00 +00:00