Mercurial > mercurial > hgweb_golang.cgi
view src/magicpacket.go @ 37:43adde439537
ver.up: gf.go
author | pyon@macmini |
---|---|
date | Tue, 26 Nov 2019 21:04:22 +0900 |
parents | 90659c7171ed |
children | 523416ca4b83 |
line wrap: on
line source
package main import ( "bytes" "fmt" "net" "log" "os" ) func main() { if len(os.Args) < 2 { fmt.Fprintln(os.Stderr, "wol mac-address1 mac-address2 ...") os.Exit(1) } for i, m := range os.Args { if i == 0 { continue } hw, err := net.ParseMAC(m) if err != nil { log.Fatal(err) } b := [][]byte{bytes.Repeat([]byte{255}, 6), bytes.Repeat([]byte(hw), 16)} pkt := bytes.Join(b, nil) conn, err := net.Dial("udp", "255.255.255.255:9") if err != nil { log.Fatal(err) } defer conn.Close() conn.Write(pkt) } }