1
0
Fork 0

Be less pedantic, improve logging

This commit is contained in:
Fabian Bläse 2024-03-10 23:40:27 +01:00
parent f0a0237bab
commit 4dc8d11538
74 changed files with 184 additions and 162 deletions

View File

@ -60,11 +60,11 @@ func main() {
}
if len(h.Polygons) == 0 {
hood.Location = []Coordinate{{Lat: h.Lat, Long: h.Long}}
hood.Location = []HoodCoordinate{{Lat: h.Lat, Long: h.Long}}
} else {
hood.Location = []Coordinate{}
hood.Location = []HoodCoordinate{}
for _, p := range h.Polygons[0] {
hood.Location = append(hood.Location, Coordinate{Lat: p.Lat, Long: p.Long})
hood.Location = append(hood.Location, HoodCoordinate{Lat: p.Lat, Long: p.Long})
}
}

View File

@ -15,28 +15,23 @@ type InputCoordinate struct {
Long float64 `json:"lon"`
}
type Coordinate struct {
Lat float64 `json:"lat"`
Long float64 `json:"long"`
}
type Hood struct {
Version uint64 `json:"version"`
Network HoodNetwork `json:"network"`
Vpn []VpnEndpoint `json:"vpn"`
HoodInfo HoodInfo `json:"hood"`
Version uint64 `json:"version"`
Network HoodNetwork `json:"network"`
Vpn []HoodVpnEndpoint `json:"vpn"`
HoodInfo HoodInfo `json:"hood"`
// one coordinate: voronoi
// two coordinates: invalid
// three or more coordinates: polygon
Location []Coordinate `json:"location,omitempty"`
Location []HoodCoordinate `json:"location,omitempty"`
}
type HoodNetwork struct {
UlaPrefix string `json:"ula_prefix"`
}
type VpnEndpoint struct {
type HoodVpnEndpoint struct {
Name string `json:"name"`
Protocol string `json:"protocol"`
Address string `json:"address"`
@ -63,3 +58,8 @@ type HoodInfo struct {
NtpIp string `json:"ntp_ip"`
Timestamp uint64 `json:"timestamp"`
}
type HoodCoordinate struct {
Lat float64 `json:"lat"`
Long float64 `json:"lon"`
}

View File

@ -53,7 +53,8 @@ func hoodPoly(lat, long float64) *Hood {
if !poly.IsClosed() {
// TODO: validate when parsing files!
log.Print("polygon is not closed!")
log.Printf("Polygon is not closed for hood: %s", hood.HoodInfo.Name)
continue
}
if poly.Contains(geo.NewPoint(lat, long)) {
@ -95,16 +96,31 @@ func keyserverV2Time(w http.ResponseWriter, r *http.Request) {
log.Printf("Processed request in %s", duration)
}
func httpHeader(w http.ResponseWriter, r *http.Request, statusCode int) {
log.Printf("\"%s %s %s\" %d", r.Method, r.RequestURI, r.Proto, statusCode)
w.WriteHeader(statusCode)
}
func keyserverV2(w http.ResponseWriter, r *http.Request) {
hoodid := r.URL.Query().Get("hoodid")
lat := r.URL.Query().Get("lat")
long := r.URL.Query().Get("long")
lon := r.URL.Query().Get("lon")
var hood *Hood = hoodId(0)
if lon != "" && long != "" {
httpHeader(w, r, http.StatusBadRequest)
return
}
if lon != "" {
long = lon
}
if hoodid != "" {
id, err := strconv.ParseUint(hoodid, 10, 64)
if err != nil {
w.WriteHeader(http.StatusBadRequest)
httpHeader(w, r, http.StatusBadRequest)
return
}
hood = hoodId(id)
@ -112,7 +128,7 @@ func keyserverV2(w http.ResponseWriter, r *http.Request) {
if lat != "" {
if long == "" {
w.WriteHeader(http.StatusBadRequest)
httpHeader(w, r, http.StatusBadRequest)
return
}
@ -122,12 +138,12 @@ func keyserverV2(w http.ResponseWriter, r *http.Request) {
latF, err := strconv.ParseFloat(lat, 64)
if err != nil {
w.WriteHeader(http.StatusBadRequest)
httpHeader(w, r, http.StatusBadRequest)
return
}
longF, err := strconv.ParseFloat(long, 64)
if err != nil {
w.WriteHeader(http.StatusBadRequest)
httpHeader(w, r, http.StatusBadRequest)
return
}
@ -139,24 +155,24 @@ func keyserverV2(w http.ResponseWriter, r *http.Request) {
}
if hood == nil {
w.WriteHeader(http.StatusInternalServerError)
httpHeader(w, r, http.StatusInternalServerError)
return
}
} else if long != "" {
w.WriteHeader(http.StatusBadRequest)
httpHeader(w, r, http.StatusBadRequest)
return
}
if hood == nil {
log.Print("No hood found")
w.WriteHeader(http.StatusNotFound)
httpHeader(w, r, http.StatusNotFound)
return
}
b, err := json.MarshalIndent(hood, "", " ")
if err != nil {
log.Printf("Marshaling error: %s", err)
w.WriteHeader(http.StatusInternalServerError)
httpHeader(w, r, http.StatusInternalServerError)
return
}
w.Header().Add("Content-Type", "application/json; charset=utf-8")

View File

@ -1,22 +1,22 @@
package main
type Hood struct {
Version uint64 `json:"version"`
Network HoodNetwork `json:"network"`
Vpn []VpnEndpoint `json:"vpn"`
HoodInfo HoodInfo `json:"hood"`
Version uint64 `json:"version"`
Network HoodNetwork `json:"network"`
Vpn []HoodVpnEndpoint `json:"vpn"`
HoodInfo HoodInfo `json:"hood"`
// one coordinate: voronoi
// two coordinates: invalid
// three or more coordinates: polygon
Location []Coordinate `json:"location,omitempty"`
Location []HoodCoordinate `json:"location,omitempty"`
}
type HoodNetwork struct {
UlaPrefix string `json:"ula_prefix"`
}
type VpnEndpoint struct {
type HoodVpnEndpoint struct {
Name string `json:"name"`
Protocol string `json:"protocol"`
Address string `json:"address"`
@ -44,7 +44,7 @@ type HoodInfo struct {
Timestamp uint64 `json:"timestamp"`
}
type Coordinate struct {
type HoodCoordinate struct {
Lat float64 `json:"lat"`
Long float64 `json:"long"`
Long float64 `json:"lon"`
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.71,
"long": 10.89
"lon": 10.89
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.981666,
"long": 9.969662
"lon": 9.969662
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.975661,
"long": 9.146826
"lon": 9.146826
}
]
}

View File

@ -34,31 +34,31 @@
"location": [
{
"lat": 50.940906,
"long": 9.668312
"lon": 9.668312
},
{
"lat": 50.862527,
"long": 9.598617
"lon": 9.598617
},
{
"lat": 50.760133,
"long": 9.684448
"lon": 9.684448
},
{
"lat": 50.776201,
"long": 9.772338
"lon": 9.772338
},
{
"lat": 50.818083,
"long": 9.888381
"lon": 9.888381
},
{
"lat": 50.907146,
"long": 9.879798
"lon": 9.879798
},
{
"lat": 50.938094,
"long": 9.780235
"lon": 9.780235
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.50198129,
"long": 10.40405273
"lon": 10.40405273
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.37,
"long": 11.62
"lon": 11.62
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.89,
"long": 10.898
"lon": 10.898
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.94814,
"long": 11.580566
"lon": 11.580566
}
]
}

View File

@ -42,43 +42,43 @@
"location": [
{
"lat": 49.68773326885868,
"long": 9.200448989868164
"lon": 9.200448989868164
},
{
"lat": 49.68562314289233,
"long": 9.200277328491211
"lon": 9.200277328491211
},
{
"lat": 49.676626315133916,
"long": 9.218602180480957
"lon": 9.218602180480957
},
{
"lat": 49.68342962539177,
"long": 9.218344688415527
"lon": 9.218344688415527
},
{
"lat": 49.686789276459145,
"long": 9.221091270446777
"lon": 9.221091270446777
},
{
"lat": 49.68701139396704,
"long": 9.224524497985838
"lon": 9.224524497985838
},
{
"lat": 49.693008183060336,
"long": 9.228386878967283
"lon": 9.228386878967283
},
{
"lat": 49.69750528937159,
"long": 9.223923683166504
"lon": 9.223923683166504
},
{
"lat": 49.69670028240164,
"long": 9.213409423828125
"lon": 9.213409423828125
},
{
"lat": 49.68773326885868,
"long": 9.200448989868164
"lon": 9.200448989868164
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 47.873644,
"long": 12.638943
"lon": 12.638943
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.268233,
"long": 10.9608003
"lon": 10.9608003
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.058,
"long": 10.065
"lon": 10.065
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.068678,
"long": 10.325771
"lon": 10.325771
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.78,
"long": 11.18
"lon": 11.18
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.09652289,
"long": 10.80041885
"lon": 10.80041885
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.581851,
"long": 11.200677
"lon": 11.200677
}
]
}

View File

@ -42,27 +42,27 @@
"location": [
{
"lat": 49.602992,
"long": 10.99951
"lon": 10.99951
},
{
"lat": 49.601709,
"long": 11.00521
"lon": 11.00521
},
{
"lat": 49.592037,
"long": 11.008728
"lon": 11.008728
},
{
"lat": 49.590035,
"long": 11.009025
"lon": 11.009025
},
{
"lat": 49.589917,
"long": 11.002528
"lon": 11.002528
},
{
"lat": 49.593084,
"long": 11.002599
"lon": 11.002599
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.63645351,
"long": 10.97757339
"lon": 10.97757339
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.58957114,
"long": 11.02100372
"lon": 11.02100372
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.58934858,
"long": 10.9388
"lon": 10.9388
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50,
"long": 11.8524
"lon": 11.8524
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.010718,
"long": 11.8079
"lon": 11.8079
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.0132,
"long": 11.84792
"lon": 11.84792
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.0522,
"long": 11.7946
"lon": 11.7946
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.0163,
"long": 11.94961
"lon": 11.94961
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.9743,
"long": 11.8652
"lon": 11.8652
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.993077,
"long": 11.775884
"lon": 11.775884
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.72,
"long": 11.06
"lon": 11.06
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.94,
"long": 11.29
"lon": 11.29
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.7762,
"long": 11.4049
"lon": 11.4049
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.65,
"long": 11.26
"lon": 11.26
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.252,
"long": 11.415
"lon": 11.415
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.4814,
"long": 10.966
"lon": 10.966
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.900258,
"long": 10.347808
"lon": 10.347808
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.031638,
"long": 10.506658
"lon": 10.506658
}
]
}

View File

@ -34,23 +34,23 @@
"location": [
{
"lat": 50.03917119338,
"long": 10.47477705002
"lon": 10.47477705002
},
{
"lat": 50.02417459643,
"long": 10.47700864792
"lon": 10.47700864792
},
{
"lat": 50.0086217092,
"long": 10.53949338913
"lon": 10.53949338913
},
{
"lat": 50.0436912,
"long": 10.55966377
"lon": 10.55966377
},
{
"lat": 50.03928155539,
"long": 10.4782101059
"lon": 10.4782101059
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.235,
"long": 11.716
"lon": 11.716
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.709,
"long": 10.845
"lon": 10.845
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.31478,
"long": 11.912398
"lon": 11.912398
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.136694,
"long": 10.523199
"lon": 10.523199
}
]
}

View File

@ -34,27 +34,27 @@
"location": [
{
"lat": 50.1481138,
"long": 10.5282926
"lon": 10.5282926
},
{
"lat": 50.1454187,
"long": 10.5162334
"lon": 10.5162334
},
{
"lat": 50.1349394,
"long": 10.5128002
"lon": 10.5128002
},
{
"lat": 50.1268513,
"long": 10.5178642
"lon": 10.5178642
},
{
"lat": 50.1337565,
"long": 10.5325841
"lon": 10.5325841
},
{
"lat": 50.1395055,
"long": 10.5364894
"lon": 10.5364894
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.271,
"long": 11.847
"lon": 11.847
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.518,
"long": 11.281
"lon": 11.281
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.294,
"long": 11.797
"lon": 11.797
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.395,
"long": 11.687
"lon": 11.687
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.144,
"long": 11.055
"lon": 11.055
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.0023,
"long": 12.0786
"lon": 12.0786
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 49.84,
"long": 9.3
"lon": 9.3
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 49.348265,
"long": 9.113524
"lon": 9.113524
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.182,
"long": 11.788
"lon": 11.788
}
]
}

View File

@ -50,7 +50,7 @@
"location": [
{
"lat": 50.328488,
"long": 11.705781
"lon": 11.705781
}
]
}

View File

@ -42,31 +42,31 @@
"location": [
{
"lat": 49.44896027702345,
"long": 11.065592765808105
"lon": 11.065592765808105
},
{
"lat": 49.45875232014657,
"long": 11.073832511901855
"lon": 11.073832511901855
},
{
"lat": 49.45942179010528,
"long": 11.086664199829102
"lon": 11.086664199829102
},
{
"lat": 49.45766441195774,
"long": 11.088123321533203
"lon": 11.088123321533203
},
{
"lat": 49.45543272983746,
"long": 11.088252067565918
"lon": 11.088252067565918
},
{
"lat": 49.44667239531518,
"long": 11.080656051635742
"lon": 11.080656051635742
},
{
"lat": 49.44748153641486,
"long": 11.067438125610352
"lon": 11.067438125610352
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.444,
"long": 11.05
"lon": 11.05
}
]
}

View File

@ -42,51 +42,51 @@
"location": [
{
"lat": 49.430291392482545,
"long": 11.040229797363281
"lon": 11.040229797363281
},
{
"lat": 49.440896414087646,
"long": 11.035938262939453
"lon": 11.035938262939453
},
{
"lat": 49.45183392837305,
"long": 11.037483215332031
"lon": 11.037483215332031
},
{
"lat": 49.467120037299296,
"long": 11.056537628173828
"lon": 11.056537628173828
},
{
"lat": 49.47035517151213,
"long": 11.094131469726562
"lon": 11.094131469726562
},
{
"lat": 49.46014703890668,
"long": 11.106576919555664
"lon": 11.106576919555664
},
{
"lat": 49.45936600129137,
"long": 11.115074157714842
"lon": 11.115074157714842
},
{
"lat": 49.4560743488551,
"long": 11.118335723876953
"lon": 11.118335723876953
},
{
"lat": 49.44988097977617,
"long": 11.12288475036621
"lon": 11.12288475036621
},
{
"lat": 49.43609653047201,
"long": 11.116962432861328
"lon": 11.116962432861328
},
{
"lat": 49.42884000063522,
"long": 11.085548400878906
"lon": 11.085548400878906
},
{
"lat": 49.428170112992,
"long": 11.065464019775389
"lon": 11.065464019775389
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.7581,
"long": 11.5401
"lon": 11.5401
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.248,
"long": 12.037
"lon": 12.037
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 51.176178,
"long": 7.189986
"lon": 7.189986
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.68,
"long": 10.96
"lon": 10.96
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 49.252047,
"long": 11.091189
"lon": 11.091189
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 47.873644,
"long": 12.743185
"lon": 12.743185
}
]
}

View File

@ -42,19 +42,19 @@
"location": [
{
"lat": 50.279855,
"long": 11.783019
"lon": 11.783019
},
{
"lat": 50.259117,
"long": 11.740018
"lon": 11.740018
},
{
"lat": 50.28852,
"long": 11.680795
"lon": 11.680795
},
{
"lat": 50.293729,
"long": 11.73813
"lon": 11.73813
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 49.575217,
"long": 11.337566
"lon": 11.337566
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.221,
"long": 11.932
"lon": 11.932
}
]
}

View File

@ -42,7 +42,7 @@
"location": [
{
"lat": 50.04499,
"long": 10.23419
"lon": 10.23419
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 50.171,
"long": 12.131
"lon": 12.131
}
]
}

View File

@ -42,19 +42,19 @@
"location": [
{
"lat": 50.29925296,
"long": 11.71866989
"lon": 11.71866989
},
{
"lat": 50.2926733,
"long": 11.77840805
"lon": 11.77840805
},
{
"lat": 50.34002657,
"long": 11.81085205
"lon": 11.81085205
},
{
"lat": 50.31975374,
"long": 11.72914123
"lon": 11.72914123
}
]
}

View File

@ -30,5 +30,11 @@
"upgrade_path": "http://[fd43:5602:29bd:ffff::feee]:83",
"ntp_ip": "fd43:5602:29bd:ffff::42",
"timestamp": 1596227702
}
}
},
"location": [
{
"lat": 0,
"lon": 0
}
]
}

View File

@ -34,27 +34,27 @@
"location": [
{
"lat": 50.208164,
"long": 11.836996
"lon": 11.836996
},
{
"lat": 50.185527,
"long": 11.837425
"lon": 11.837425
},
{
"lat": 50.176348,
"long": 11.832361
"lon": 11.832361
},
{
"lat": 50.175799,
"long": 11.855621
"lon": 11.855621
},
{
"lat": 50.184098,
"long": 11.859226
"lon": 11.859226
},
{
"lat": 50.208164,
"long": 11.856909
"lon": 11.856909
}
]
}

View File

@ -34,7 +34,7 @@
"location": [
{
"lat": 49.79688,
"long": 9.93489
"lon": 9.93489
}
]
}

View File

@ -34,19 +34,19 @@
"location": [
{
"lat": 50.145061,
"long": 11.801462
"lon": 11.801462
},
{
"lat": 50.122284,
"long": 11.801462
"lon": 11.801462
},
{
"lat": 50.122284,
"long": 11.832361
"lon": 11.832361
},
{
"lat": 50.145061,
"long": 11.832361
"lon": 11.832361
}
]
}