blob: f21624e01326a7606edb300b4f7038f68fb707d5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
package internal
import (
"encoding/json"
"flag"
"fmt"
"log"
"net/http"
"os"
"github.com/Xe/x/tools/license/licenses"
"go4.org/legal"
)
var (
licenseShow = flag.Bool("license", false, "show software license?")
)
func init() {
legal.RegisterLicense(licenses.CC0License)
legal.RegisterLicense(licenses.SQLiteBlessing)
http.HandleFunc("/.within/licenses", func(w http.ResponseWriter, r *http.Request) {
json.NewEncoder(w).Encode(legal.Licenses())
})
}
// HandleLicense optionally shows all software licenses.
func HandleLicense() {
if *licenseShow {
log.Printf("Licenses for %v", os.Args)
for _, li := range legal.Licenses() {
fmt.Println(li)
fmt.Println()
}
os.Exit(0)
}
}
|