diff options
Diffstat (limited to 'Godeps/_workspace/src/github.com/anachronistic/apns/mock_feedback_server.go')
-rw-r--r-- | Godeps/_workspace/src/github.com/anachronistic/apns/mock_feedback_server.go | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/Godeps/_workspace/src/github.com/anachronistic/apns/mock_feedback_server.go b/Godeps/_workspace/src/github.com/anachronistic/apns/mock_feedback_server.go deleted file mode 100644 index d7536f261..000000000 --- a/Godeps/_workspace/src/github.com/anachronistic/apns/mock_feedback_server.go +++ /dev/null @@ -1,53 +0,0 @@ -package apns - -import ( - "bytes" - "crypto/tls" - "encoding/binary" - "log" - "net" - "time" -) - -// StartMockFeedbackServer spins up a simple stand-in for the Apple -// feedback service that can be used for testing purposes. Doesn't -// handle many errors, etc. Just for the sake of having something "live" -// to hit. -func StartMockFeedbackServer(certFile, keyFile string) { - cert, err := tls.LoadX509KeyPair(certFile, keyFile) - if err != nil { - log.Panic(err) - } - config := tls.Config{Certificates: []tls.Certificate{cert}, ClientAuth: tls.RequireAnyClientCert} - log.Print("- starting Mock Apple Feedback TCP server at 0.0.0.0:5555") - - srv, _ := tls.Listen("tcp", "0.0.0.0:5555", &config) - for { - conn, err := srv.Accept() - if err != nil { - log.Panic(err) - } - go loop(conn) - } -} - -// Writes binary data to the client in the same -// manner as the Apple service would. -// -// [4 bytes, 2 bytes, 32 bytes] = 38 bytes total -func loop(conn net.Conn) { - defer conn.Close() - for { - timeT := uint32(1368809290) // 2013-05-17 12:48:10 -0400 - token := "abcd1234efab5678abcd1234efab5678" - - buf := new(bytes.Buffer) - binary.Write(buf, binary.BigEndian, timeT) - binary.Write(buf, binary.BigEndian, uint16(len(token))) - binary.Write(buf, binary.BigEndian, []byte(token)) - conn.Write(buf.Bytes()) - - dur, _ := time.ParseDuration("1s") - time.Sleep(dur) - } -} |