diff options
Diffstat (limited to 'vendor/github.com/dnstap/golang-dnstap/FrameStreamInput.go')
-rw-r--r-- | vendor/github.com/dnstap/golang-dnstap/FrameStreamInput.go | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/vendor/github.com/dnstap/golang-dnstap/FrameStreamInput.go b/vendor/github.com/dnstap/golang-dnstap/FrameStreamInput.go deleted file mode 100644 index 5d58aa5b6..000000000 --- a/vendor/github.com/dnstap/golang-dnstap/FrameStreamInput.go +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2013-2014 by Farsight Security, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package dnstap - -import ( - "io" - "log" - "os" - - "github.com/farsightsec/golang-framestream" -) - -type FrameStreamInput struct { - wait chan bool - decoder *framestream.Decoder -} - -func NewFrameStreamInput(r io.ReadWriter, bi bool) (input *FrameStreamInput, err error) { - input = new(FrameStreamInput) - decoderOptions := framestream.DecoderOptions{ - ContentType: FSContentType, - Bidirectional: bi, - } - input.decoder, err = framestream.NewDecoder(r, &decoderOptions) - if err != nil { - return - } - input.wait = make(chan bool) - return -} - -func NewFrameStreamInputFromFilename(fname string) (input *FrameStreamInput, err error) { - file, err := os.Open(fname) - if err != nil { - return nil, err - } - input, err = NewFrameStreamInput(file, false) - return -} - -func (input *FrameStreamInput) ReadInto(output chan []byte) { - for { - buf, err := input.decoder.Decode() - if err != nil { - if err != io.EOF { - log.Printf("framestream.Decoder.Decode() failed: %s\n", err) - } - break - } - newbuf := make([]byte, len(buf)) - copy(newbuf, buf) - output <- newbuf - } - close(input.wait) -} - -func (input *FrameStreamInput) Wait() { - <-input.wait -} |