mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-07 23:13:11 -06:00
Merge pull request #64 from globekeeper/DEV-378/forward-original-ip
🌐 Forward IP for login/register device creation (external API)
This commit is contained in:
commit
937afcfa2d
|
|
@ -239,6 +239,9 @@ func MakeExternalAPI(metricsName string, f func(*http.Request) util.JSONResponse
|
||||||
span := opentracing.StartSpan(metricsName)
|
span := opentracing.StartSpan(metricsName)
|
||||||
defer span.Finish()
|
defer span.Finish()
|
||||||
req = req.WithContext(opentracing.ContextWithSpan(req.Context(), span))
|
req = req.WithContext(opentracing.ContextWithSpan(req.Context(), span))
|
||||||
|
if forwardedFor := req.Header.Get("X-Forwarded-For"); forwardedFor != "" {
|
||||||
|
req.RemoteAddr = forwardedFor
|
||||||
|
}
|
||||||
h.ServeHTTP(nextWriter, req)
|
h.ServeHTTP(nextWriter, req)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,9 @@ func (s *accountDataStatements) SelectAccountDataInRange(
|
||||||
filter.Senders, filter.NotSenders,
|
filter.Senders, filter.NotSenders,
|
||||||
filter.Types, filter.NotTypes,
|
filter.Types, filter.NotTypes,
|
||||||
[]string{}, nil, filter.Limit, FilterOrderAsc)
|
[]string{}, nil, filter.Limit, FilterOrderAsc)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
rows, err := stmt.QueryContext(ctx, params...)
|
rows, err := stmt.QueryContext(ctx, params...)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
|
|
|
||||||
|
|
@ -191,6 +191,9 @@ func (rp *RequestPool) updateLastSeen(req *http.Request, device *userapi.Device)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if forwardedFor := req.Header.Get("X-Forwarded-For"); forwardedFor != "" {
|
||||||
|
req.RemoteAddr = forwardedFor
|
||||||
|
}
|
||||||
remoteAddr := req.RemoteAddr
|
remoteAddr := req.RemoteAddr
|
||||||
if rp.cfg.RealIPHeader != "" {
|
if rp.cfg.RealIPHeader != "" {
|
||||||
if header := req.Header.Get(rp.cfg.RealIPHeader); header != "" {
|
if header := req.Header.Get(rp.cfg.RealIPHeader); header != "" {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue