BYOK Personal Data Server (PDS) written in Go
ipfs vow atproto pds go
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix(server): fix nil pointer missing DpopJkt

+18 -1
+6
server/handle_oauth_par.go
··· 100 100 101 101 if parRequest.DpopJkt == nil { 102 102 if client.Metadata.DpopBoundAccessTokens { 103 + if dpopProof.JKT == "" { 104 + msg := "dpop proof is required for dpop bound access tokens" 105 + logger.Error(msg) 106 + helpers.InputError(w, &msg) 107 + return 108 + } 103 109 parRequest.DpopJkt = new(dpopProof.JKT) 104 110 } 105 111 } else {
+5
server/handle_oauth_token.go
··· 166 166 return 167 167 } 168 168 169 + if client.Metadata.DpopBoundAccessTokens && authReq.Parameters.DpopJkt == nil { 170 + helpers.InputError(w, new("dpop jkt is required for dpop bound access tokens")) 171 + return 172 + } 173 + 169 174 repo, err := s.getRepoActorByDid(ctx, *authReq.Sub) 170 175 if err != nil { 171 176 helpers.InputError(w, new("unable to find actor"))
+7 -1
server/middleware.go
··· 350 350 return 351 351 } 352 352 353 + if oauthToken.Parameters.DpopJkt == nil { 354 + logger.Error("token not bound to dpop") 355 + helpers.InputError(w, new("token not bound to dpop")) 356 + return 357 + } 358 + 353 359 if *oauthToken.Parameters.DpopJkt != proof.JKT { 354 - logger.Error("jkt mismatch", "token", oauthToken.Parameters.DpopJkt, "proof", proof.JKT) 360 + logger.Error("jkt mismatch", "token", *oauthToken.Parameters.DpopJkt, "proof", proof.JKT) 355 361 helpers.InputError(w, new("dpop jkt mismatch")) 356 362 return 357 363 }