Commit Graph

29 Commits

Author SHA1 Message Date
Vincent Ambo 025b143d88 Replace usage of chrono with time crate
The time crate is the underlying crate which chrono uses for its
various operations.

Unfortunately, chrono is unmaintained and older versions of the time
crate have security vulnerabilites[0] which are unfixed in chrono[1].

The medallion code does not use any chrono-specific features and all
uses of it could be trivially replaced with the underlying time
structs.

Note that this change adds calls to `expect`. Where these calls are
made, the previous chrono functions also panicked internally if
out-of-range values were passed.

We noticed this issue while doing a similar refactoring in a program
that also uses medallion[2].

[0]: https://rustsec.org/advisories/RUSTSEC-2020-0071.html
[1]: https://rustsec.org/advisories/RUSTSEC-2020-0159.html
[2]: https://cl.tvl.fyi/c/depot/+/5311
2022-02-19 08:29:40 -05:00
Thomas Gideon 4776132e51 Migrated to anyhow and chrono from failure and time crates. 2020-06-22 11:52:53 -04:00
Thomas Gideon 7fcae534f2
Switch to failure (#6)
* Switch to failure

* Bump version
2018-11-16 17:28:01 -05:00
Thomas Gideon 1b594ff60e
Add defaults for generic parameters (#5) 2018-08-05 12:03:58 -04:00
Thomas Gideon aac6d9f7b5 Lints and formatting 2018-03-12 09:43:57 -04:00
Thomas Gideon ccc6657083 Update deps. 2018-03-12 09:38:01 -04:00
Thomas Gideon 42824a133e Update to serde 1.0 (#4)
* Try updating service to 1.0

* Strip bounds from structs

* Clean bounds from Default impl

* Remove pem files, clean up some documentation

* Add badges, categories
2017-08-10 09:39:35 -04:00
Thomas Gideon f1db24606b Upgrade to Serde 1.0 (#2)
* Bump openssl
* Fix naive code that was breaking serde 1.0
2017-05-01 13:38:04 -04:00
Thomas Gideon 0aa3aa6faa Verify not before and expiration claims, if present 2017-04-05 16:33:39 -04:00
Thomas Gideon 52452923d2 Implement Error, Display for Error enum 2017-03-14 14:40:52 -04:00
Thomas Gideon 3c9fd6b13b Refactor header claims (#1)
Simplify customization, bump to 2.0.0.
2017-03-07 14:03:24 -05:00
Thomas Gideon 9df2ac741e Stop using padding 2017-02-20 13:05:06 -05:00
Thomas Gideon a57e582337 De-dupe some test code 2017-02-17 12:54:50 -05:00
Thomas Gideon 3c95e1b163 Change to ? operator 2017-02-17 12:39:28 -05:00
Thomas Gideon 94b83d12aa Clean up error handling in crypt 2017-02-17 11:53:12 -05:00
Thomas Gideon e24df1568d More info/config for Travis 2017-02-15 15:42:06 -05:00
Thomas Gideon 6f7daf9a87 Fill out rustdoc 2017-02-15 15:41:52 -05:00
Thomas Gideon 7cc935244d Finish clean up 2017-02-15 13:53:00 -05:00
Thomas Gideon 29037a0df7 Change one operation over to new higher level fn 2017-02-15 13:50:12 -05:00
Thomas Gideon cfd61ae991 Change remaining tests 2017-02-15 13:47:36 -05:00
Thomas Gideon ef8680fe3d Add new higher level fn's, switch a test 2017-02-15 13:45:13 -05:00
Thomas Gideon 3c624ad482 Rename fn's to be consistent 2017-02-15 13:40:34 -05:00
Thomas Gideon 9782878160 Move tests 2017-02-15 13:35:10 -05:00
Thomas Gideon 7bc97d63ca Add a test. 2017-02-14 13:53:40 -05:00
Thomas Gideon 65e9f336f2 Fix license, use more generic test names 2017-02-14 13:45:24 -05:00
Thomas Gideon 6f584f42c8 Get all tests working 2017-02-14 13:37:40 -05:00
Thomas Gideon ecae8ea43c Get more tests working 2017-02-14 13:36:45 -05:00
Thomas Gideon 81a965caef Get tests (almost) working 2017-02-14 13:33:00 -05:00
Thomas Gideon 29ad0d721d Initial re-factor 2017-02-13 18:40:07 -05:00