| OLD | NEW | 
|   1 // Copyright 2015 The Chromium Authors. All rights reserved. |   1 // Copyright 2015 The Chromium Authors. All rights reserved. | 
|   2 // Use of this source code is governed by a BSD-style license that can be |   2 // Use of this source code is governed by a BSD-style license that can be | 
|   3 // found in the LICENSE file. |   3 // found in the LICENSE file. | 
|   4  |   4  | 
|   5 package lhttp |   5 package lhttp | 
|   6  |   6  | 
|   7 import ( |   7 import ( | 
|   8         "errors" |   8         "errors" | 
|   9         "net/url" |   9         "net/url" | 
|  10         "strings" |  10         "strings" | 
|  11 ) |  11 ) | 
|  12  |  12  | 
|  13 // URLToHTTPS ensures the url is https://. |  13 // URLToHTTPS ensures the url is https://. | 
|  14 func URLToHTTPS(s string) (string, error) { |  14 func URLToHTTPS(s string) (string, error) { | 
|  15         u, err := url.Parse(s) |  15         u, err := url.Parse(s) | 
|  16         if err != nil { |  16         if err != nil { | 
|  17                 return "", err |  17                 return "", err | 
|  18         } |  18         } | 
|  19         if u.Scheme != "" && u.Scheme != "https" { |  19         if u.Scheme != "" && u.Scheme != "https" { | 
|  20                 return "", errors.New("Only https:// scheme is accepted. It can 
    be omitted.") |  20                 return "", errors.New("Only https:// scheme is accepted. It can 
    be omitted.") | 
|  21         } |  21         } | 
|  22         if !strings.HasPrefix(s, "https://") { |  22         if !strings.HasPrefix(s, "https://") { | 
|  23                 s = "https://" + s |  23                 s = "https://" + s | 
|  24         } |  24         } | 
|  25         if _, err = url.Parse(s); err != nil { |  25         if _, err = url.Parse(s); err != nil { | 
|  26                 return "", err |  26                 return "", err | 
|  27         } |  27         } | 
|  28         return s, nil |  28         return s, nil | 
|  29 } |  29 } | 
| OLD | NEW |