File tree 2 files changed +20
-3
lines changed
2 files changed +20
-3
lines changed Original file line number Diff line number Diff line change @@ -250,6 +250,19 @@ func Contexter() macaron.Handler {
250
250
if ctx .Query ("go-get" ) == "1" {
251
251
ownerName := c .Params (":username" )
252
252
repoName := c .Params (":reponame" )
253
+ trimmedRepoName := strings .TrimSuffix (repoName , ".git" )
254
+
255
+ if ownerName == "" || trimmedRepoName == "" {
256
+ _ , _ = c .Write ([]byte (`<!doctype html>
257
+ <html>
258
+ <body>
259
+ invalid import path
260
+ </body>
261
+ </html>
262
+ ` ))
263
+ c .WriteHeader (400 )
264
+ return
265
+ }
253
266
branchName := "master"
254
267
255
268
repo , err := models .GetRepositoryByOwnerAndName (ownerName , repoName )
@@ -277,7 +290,7 @@ func Contexter() macaron.Handler {
277
290
</body>
278
291
</html>
279
292
` , map [string ]string {
280
- "GoGetImport" : ComposeGoGetImport (ownerName , strings . TrimSuffix ( repoName , ".git" ) ),
293
+ "GoGetImport" : ComposeGoGetImport (ownerName , trimmedRepoName ),
281
294
"CloneLink" : models .ComposeHTTPSCloneURL (ownerName , repoName ),
282
295
"GoDocDirectory" : prefix + "{/dir}" ,
283
296
"GoDocFile" : prefix + "{/dir}/{file}#L{line}" ,
Original file line number Diff line number Diff line change @@ -201,10 +201,14 @@ func ComposeGoGetImport(owner, repo string) string {
201
201
// .netrc file.
202
202
func EarlyResponseForGoGetMeta (ctx * Context ) {
203
203
username := ctx .Params (":username" )
204
- reponame := ctx .Params (":reponame" )
204
+ reponame := strings .TrimSuffix (ctx .Params (":reponame" ), ".git" )
205
+ if username == "" || reponame == "" {
206
+ ctx .PlainText (400 , []byte ("invalid repository path" ))
207
+ return
208
+ }
205
209
ctx .PlainText (200 , []byte (com .Expand (`<meta name="go-import" content="{GoGetImport} git {CloneLink}">` ,
206
210
map [string ]string {
207
- "GoGetImport" : ComposeGoGetImport (username , strings . TrimSuffix ( reponame , ".git" ) ),
211
+ "GoGetImport" : ComposeGoGetImport (username , reponame ),
208
212
"CloneLink" : models .ComposeHTTPSCloneURL (username , reponame ),
209
213
})))
210
214
}
You can’t perform that action at this time.
0 commit comments