watchtower/wtserver/server: add missing godocs + code move
This commit is contained in:
parent
7cdbb786d6
commit
ba53879b2b
@ -295,6 +295,8 @@ func (s *Server) handleClient(peer Peer) {
|
||||
}
|
||||
}
|
||||
|
||||
// handleInit accepts the local and remote Init messages, and verifies that the
|
||||
// client is not requesting any required features that are unknown to the tower.
|
||||
func (s *Server) handleInit(localInit, remoteInit *wtwire.Init) error {
|
||||
remoteLocalFeatures := lnwire.NewFeatureVector(
|
||||
remoteInit.LocalFeatures, wtwire.LocalFeatures,
|
||||
@ -320,33 +322,6 @@ func (s *Server) handleInit(localInit, remoteInit *wtwire.Init) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *Server) readMessage(peer Peer) (wtwire.Message, error) {
|
||||
// Set a read timeout to ensure we drop the client if not sent in a
|
||||
// timely manner.
|
||||
err := peer.SetReadDeadline(time.Now().Add(s.cfg.ReadTimeout))
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to set read deadline: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Pull the next message off the wire, and parse it according to the
|
||||
// watchtower wire specification.
|
||||
rawMsg, err := peer.ReadNextMessage()
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to read message: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
msgReader := bytes.NewReader(rawMsg)
|
||||
nextMsg, err := wtwire.ReadMessage(msgReader, 0)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to parse message: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nextMsg, nil
|
||||
}
|
||||
|
||||
// handleCreateSession processes a CreateSession message from the peer, and returns
|
||||
// a CreateSessionReply in response. This method will only succeed if no existing
|
||||
// session info is known about the session id. If an existing session is found,
|
||||
@ -558,6 +533,37 @@ func (s *Server) replyStateUpdate(peer Peer, id *wtdb.SessionID,
|
||||
}
|
||||
}
|
||||
|
||||
// readMessage receives and parses the next message from the given Peer. An
|
||||
// error is returned if a message is not received before the server's read
|
||||
// timeout, the read off the wire failed, or the message could not be
|
||||
// deserialized.
|
||||
func (s *Server) readMessage(peer Peer) (wtwire.Message, error) {
|
||||
// Set a read timeout to ensure we drop the client if not sent in a
|
||||
// timely manner.
|
||||
err := peer.SetReadDeadline(time.Now().Add(s.cfg.ReadTimeout))
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to set read deadline: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Pull the next message off the wire, and parse it according to the
|
||||
// watchtower wire specification.
|
||||
rawMsg, err := peer.ReadNextMessage()
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to read message: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
msgReader := bytes.NewReader(rawMsg)
|
||||
nextMsg, err := wtwire.ReadMessage(msgReader, 0)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("unable to parse message: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nextMsg, nil
|
||||
}
|
||||
|
||||
// sendMessage sends a watchtower wire message to the target peer.
|
||||
func (s *Server) sendMessage(peer Peer, msg wtwire.Message) error {
|
||||
// TODO(conner): use buffer pool?
|
||||
|
Loading…
Reference in New Issue
Block a user