+5
cmd/cocoon/main.go
+5
cmd/cocoon/main.go
···
136
EnvVars: []string{"COCOON_BLOCKSTORE_VARIANT"},
137
Value: "sqlite",
138
},
139
},
140
Commands: []*cli.Command{
141
runServe,
···
186
},
187
SessionSecret: cmd.String("session-secret"),
188
BlockstoreVariant: server.MustReturnBlockstoreVariant(cmd.String("blockstore-variant")),
189
})
190
if err != nil {
191
fmt.Printf("error creating cocoon: %v", err)
···
136
EnvVars: []string{"COCOON_BLOCKSTORE_VARIANT"},
137
Value: "sqlite",
138
},
139
+
&cli.StringFlag{
140
+
Name: "fallback-proxy",
141
+
EnvVars: []string{"COCOON_FALLBACK_PROXY"},
142
+
},
143
},
144
Commands: []*cli.Command{
145
runServe,
···
190
},
191
SessionSecret: cmd.String("session-secret"),
192
BlockstoreVariant: server.MustReturnBlockstoreVariant(cmd.String("blockstore-variant")),
193
+
FallbackProxy: cmd.String("fallback-proxy"),
194
})
195
if err != nil {
196
fmt.Printf("error creating cocoon: %v", err)
+3
server/handle_proxy.go
+3
server/handle_proxy.go
···
19
20
func (s *Server) getAtprotoProxyEndpointFromRequest(e echo.Context) (string, string, error) {
21
svc := e.Request().Header.Get("atproto-proxy")
22
+
if svc == "" && s.config.FallbackProxy != "" {
23
+
svc = s.config.FallbackProxy
24
+
}
25
26
svcPts := strings.Split(svc, "#")
27
if len(svcPts) != 2 {
+3
server/server.go
+3
server/server.go
···
75
oauthProvider *provider.Provider
76
evtman *events.EventManager
77
passport *identity.Passport
78
79
dbName string
80
s3Config *S3Config
···
118
SmtpEmail string
119
SmtpName string
120
BlockstoreVariant BlockstoreVariant
121
}
122
123
type CustomValidator struct {
···
350
SmtpName: args.SmtpName,
351
SmtpEmail: args.SmtpEmail,
352
BlockstoreVariant: args.BlockstoreVariant,
353
},
354
evtman: events.NewEventManager(events.NewMemPersister()),
355
passport: identity.NewPassport(h, identity.NewMemCache(10_000)),
···
75
oauthProvider *provider.Provider
76
evtman *events.EventManager
77
passport *identity.Passport
78
+
fallbackProxy string
79
80
dbName string
81
s3Config *S3Config
···
119
SmtpEmail string
120
SmtpName string
121
BlockstoreVariant BlockstoreVariant
122
+
FallbackProxy string
123
}
124
125
type CustomValidator struct {
···
352
SmtpName: args.SmtpName,
353
SmtpEmail: args.SmtpEmail,
354
BlockstoreVariant: args.BlockstoreVariant,
355
+
FallbackProxy: args.FallbackProxy,
356
},
357
evtman: events.NewEventManager(events.NewMemPersister()),
358
passport: identity.NewPassport(h, identity.NewMemCache(10_000)),