Compare commits

..

No commits in common. "2c6c1ff2dfb1f0c0eaf590e2fff2452db6285c7b" and "c2664e94fa44a822c8e50dc2b5ccf611eb1e2239" have entirely different histories.

6 changed files with 5 additions and 57 deletions

6
go.mod
View file

@ -1,8 +1,6 @@
module git.g3e.fr/syonad/two module git.g3e.fr/syonad/two
go 1.24.0 go 1.23.8
toolchain go1.24.11
require ( require (
github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect
@ -31,7 +29,7 @@ require (
go.opentelemetry.io/otel/trace v1.37.0 // indirect go.opentelemetry.io/otel/trace v1.37.0 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/net v0.41.0 // indirect golang.org/x/net v0.41.0 // indirect
golang.org/x/sys v0.39.0 // indirect golang.org/x/sys v0.34.0 // indirect
golang.org/x/text v0.28.0 // indirect golang.org/x/text v0.28.0 // indirect
google.golang.org/protobuf v1.36.6 // indirect google.golang.org/protobuf v1.36.6 // indirect
) )

2
go.sum
View file

@ -53,8 +53,6 @@ golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA= golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA= golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA=
golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk=
golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng= golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng=
golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU= golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU=
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=

View file

@ -9,8 +9,6 @@ import (
"net" "net"
"net/http" "net/http"
"time" "time"
"git.g3e.fr/syonad/two/internal/netns"
) )
var data NoCloudData var data NoCloudData
@ -19,7 +17,6 @@ var (
iface = flag.String("interface", "0.0.0.0", "Interface IP à écouter") iface = flag.String("interface", "0.0.0.0", "Interface IP à écouter")
port = flag.Int("port", 8080, "Port à utiliser") port = flag.Int("port", 8080, "Port à utiliser")
file = flag.String("file", "", "Fichier JSON contenant les données NoCloud") file = flag.String("file", "", "Fichier JSON contenant les données NoCloud")
netns_name = flag.String("netns", "", "Network namespace à utiliser")
) )
func getIP(r *http.Request) string { func getIP(r *http.Request) string {
@ -57,12 +54,6 @@ func rootHandler(w http.ResponseWriter, r *http.Request) {
func StartServer() { func StartServer() {
flag.Parse() flag.Parse()
if *netns_name != "" {
if err := netns.Enter(*netns_name); err != nil {
log.Fatalf("Impossible d'entrer dans le netns: %v", err)
}
}
if *file == "" { if *file == "" {
log.Fatal("Vous devez spécifier un fichier via --file") log.Fatal("Vous devez spécifier un fichier via --file")
} }

View file

@ -1,5 +0,0 @@
package netns
func Enter(name string) error {
return enter(name)
}

View file

@ -1,26 +0,0 @@
//go:build linux
package netns
import (
"fmt"
"os"
"runtime"
"golang.org/x/sys/unix"
)
func enter(name string) error {
runtime.LockOSThread()
defer runtime.UnlockOSThread()
path := fmt.Sprintf("/var/run/netns/%s", name)
f, err := os.Open(path)
if err != nil {
return err
}
defer f.Close()
return unix.Setns(int(f.Fd()), unix.CLONE_NEWNET)
}

View file

@ -1,8 +0,0 @@
//go:build !linux
package netns
func enter(name string) error {
// Ignoré hors Linux
return nil
}