Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SSL #1

Closed
seanmonstar opened this issue Sep 3, 2014 · 9 comments
Closed

SSL #1

seanmonstar opened this issue Sep 3, 2014 · 9 comments
Labels
A-server Area: server.

Comments

@seanmonstar
Copy link
Member

No description provided.

@seanmonstar seanmonstar added A-client Area: client. A-server Area: server. and removed A-client Area: client. labels Sep 10, 2014
@seanmonstar
Copy link
Member Author

ssl support for the client exists, still lacking server support

@cactorium
Copy link
Contributor

Is it alright if I take a stab at this?

@seanmonstar
Copy link
Member Author

@cactorium I'd be delighted if this showed up as a PR :D

Some notes: I'd imagine adding a pub fn https(ip: IpAddr, port: Port, cert: Path, key: Path) or something similar. The paths to the cert and key can be Options on the Server. The HttpListener would probably need to become an enum similar to HttpStream, and the Https variant accepting those Paths.

@cactorium
Copy link
Contributor

@seanmonstar Awesome :D

I think I did it? #199 I'm still working on figuring out how to test it, but here's something to look at for now

@veeti
Copy link

veeti commented Dec 31, 2014

What's the story for certificate validation in the client?

@cactorium
Copy link
Contributor

https://github.com/hyperium/hyper/blob/master/src/net.rs#L257 It looks like they're verified, peek around there and the openssl docs if you want more details: https://www.openssl.org/docs/ssl/SSL_CTX_set_verify.html

@seanmonstar
Copy link
Member Author

@veeti
Copy link

veeti commented Dec 31, 2014

Thanks: so (rust-)openssl does verification, but is something required on the hyper side? I see there's no default verifier included and the provided client example accepts everything for me. Is this expected? Should I file a bug for this?

@seanmonstar
Copy link
Member Author

@veeti you can set a verifier function on Client. I guess a default could be similar to Python or nodejs.

Manishearth pushed a commit to Manishearth/hyper that referenced this issue Jan 12, 2015
Update servo branch for rust upgrade + rustc workaround for SendStr issue.
ayax79 pushed a commit to ayax79/hyper that referenced this issue Jan 14, 2015
Implements the missing enum cases in Http* and adds a new
method to the default Server implementation to take advantage
of the new TLS support

Closes hyperium#1
@ghost ghost mentioned this issue Jul 4, 2021
@ghost ghost mentioned this issue Oct 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-server Area: server.
Projects
None yet
Development

No branches or pull requests

3 participants