Skip to content

Instantly share code, notes, and snippets.

@cleahcim
Last active December 22, 2015 02:21
Show Gist options
  • Save cleahcim/c0f43caabc346473f7ea to your computer and use it in GitHub Desktop.
Save cleahcim/c0f43caabc346473f7ea to your computer and use it in GitHub Desktop.
package main
import (
"fmt"
"golang.org/x/net/websocket"
"github.com/rminnich/go9p"
"log"
)
func main() {
origin := "http://localhost/"
url := "ws://localhost:12345/wsserver"
ws, err := websocket.Dial(url, "", origin)
if err != nil {
log.Fatal(err)
}
clnt, err := go9p.Connect(ws, 1024, false)
if err != nil {
log.Fatal(err)
}
file, err := clnt.FOpen("/", go9p.DMREAD)
if err != nil {
log.Fatal(err)
}
fmt.Println(file)
}
package main
import (
"flag"
"fmt"
"github.com/rminnich/go9p"
"golang.org/x/net/websocket"
"net/http"
)
var addr = flag.String("addr", ":12345", "network address")
var debug = flag.Int("debug", 0, "print debug messages")
var root = flag.String("root", "/", "root filesystem")
// Echo the data received on the WebSocket.
func WSServer(ws *websocket.Conn) {
ufs := new(go9p.Ufs)
ufs.Dotu = true
ufs.Id = "ufs"
ufs.Root = *root
ufs.Debuglevel = *debug
ufs.Start(ufs)
fmt.Print("ufs starting\n")
// determined by build tags
//extraFuncs()
ufs.NewConn(ws)
}
func main() {
flag.Parse()
http.Handle("/wsserver", websocket.Handler(WSServer))
err := http.ListenAndServe(*addr, nil)
if err != nil {
panic("ListenAndServe: " + err.Error())
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment