examples/auth: Use Request.TLS method

This commit is contained in:
Adnan Maolood 2021-02-24 09:22:01 -05:00
parent 15385e3095
commit 6f46b2fa47

View File

@ -52,11 +52,12 @@ func fingerprint(cert *x509.Certificate) string {
} }
func profile(ctx context.Context, w gemini.ResponseWriter, r *gemini.Request) { func profile(ctx context.Context, w gemini.ResponseWriter, r *gemini.Request) {
if len(r.TLS.PeerCertificates) == 0 { tls := r.TLS()
if len(tls.PeerCertificates) == 0 {
w.WriteHeader(gemini.StatusCertificateRequired, "Certificate required") w.WriteHeader(gemini.StatusCertificateRequired, "Certificate required")
return return
} }
fingerprint := fingerprint(r.TLS.PeerCertificates[0]) fingerprint := fingerprint(tls.PeerCertificates[0])
user, ok := users[fingerprint] user, ok := users[fingerprint]
if !ok { if !ok {
user = &User{} user = &User{}
@ -67,7 +68,8 @@ func profile(ctx context.Context, w gemini.ResponseWriter, r *gemini.Request) {
} }
func changeUsername(ctx context.Context, w gemini.ResponseWriter, r *gemini.Request) { func changeUsername(ctx context.Context, w gemini.ResponseWriter, r *gemini.Request) {
if len(r.TLS.PeerCertificates) == 0 { tls := r.TLS()
if len(tls.PeerCertificates) == 0 {
w.WriteHeader(gemini.StatusCertificateRequired, "Certificate required") w.WriteHeader(gemini.StatusCertificateRequired, "Certificate required")
return return
} }
@ -77,7 +79,7 @@ func changeUsername(ctx context.Context, w gemini.ResponseWriter, r *gemini.Requ
w.WriteHeader(gemini.StatusInput, "Username") w.WriteHeader(gemini.StatusInput, "Username")
return return
} }
fingerprint := fingerprint(r.TLS.PeerCertificates[0]) fingerprint := fingerprint(tls.PeerCertificates[0])
user, ok := users[fingerprint] user, ok := users[fingerprint]
if !ok { if !ok {
user = &User{} user = &User{}