123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- package main
- import (
- "flag"
- "fmt"
- "net"
- "net/http"
- "os"
- "git.giaever.org/joachimmg/go-log.git/log"
- "git.giaever.org/joachimmg/m-dns/client"
- "git.giaever.org/joachimmg/m-dns/host"
- "git.giaever.org/joachimmg/m-dns/server"
- "git.giaever.org/joachimmg/m-dns/zone"
- )
- var runServer bool
- func init() {
- flag.BoolVar(&runServer, "s", false, "Server if set to true, client otherwise.")
- flag.Parse()
- }
- func main() {
- hostname, err := os.Hostname()
- if err != nil {
- log.Errorln(err)
- }
- if runServer {
- txt := []string{
- "login=true",
- "admin=/admin",
- "autosign=",
- }
- host, err := host.New(
- "This is _a_ .dotted. instance",
- "_myservice._tcp",
- "local",
- hostname,
- []net.IP{net.ParseIP("192.168.1.128"), net.IPv4zero},
- 8080,
- txt,
- )
- if err != nil {
- log.Errorln(err)
- }
- zone, err := zone.New(host)
- if err != nil {
- log.Errorln(err)
- }
- mdns, err := server.New(zone, nil)
- if err != nil {
- log.Errorln(err)
- }
- log.Traceln(mdns)
- defer mdns.Close()
- //mdnss.Daemon()
- http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintf(w, "Hello, I'm just here hangig around.")
- })
- log.Panicln(http.ListenAndServe(":8080", nil))
- } else {
- mdns, err := client.New()
- if err != nil {
- log.Panicln(err)
- }
- defer mdns.Close()
- log.Traceln(mdns)
- }
- }
|