mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-02-23 22:46:40 +01:00
htlcswitch/switch: adds concrete ErrSwitchExisting
This commit is contained in:
parent
0d49a60924
commit
9047eee2f1
1 changed files with 12 additions and 12 deletions
|
@ -47,6 +47,10 @@ var (
|
||||||
// txn.
|
// txn.
|
||||||
ErrIncompleteForward = errors.New("incomplete forward detected")
|
ErrIncompleteForward = errors.New("incomplete forward detected")
|
||||||
|
|
||||||
|
// ErrSwitchExiting signaled when the switch has received a shutdown
|
||||||
|
// request.
|
||||||
|
ErrSwitchExiting = errors.New("htlcswitch shutting down")
|
||||||
|
|
||||||
// zeroPreimage is the empty preimage which is returned when we have
|
// zeroPreimage is the empty preimage which is returned when we have
|
||||||
// some errors.
|
// some errors.
|
||||||
zeroPreimage [sha256.Size]byte
|
zeroPreimage [sha256.Size]byte
|
||||||
|
@ -322,13 +326,13 @@ func (s *Switch) ProcessContractResolution(msg contractcourt.ResolutionMsg) erro
|
||||||
doneChan: done,
|
doneChan: done,
|
||||||
}:
|
}:
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return fmt.Errorf("switch shutting down")
|
return ErrSwitchExiting
|
||||||
}
|
}
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case <-done:
|
case <-done:
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return fmt.Errorf("switch shutting down")
|
return ErrSwitchExiting
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
@ -383,24 +387,21 @@ func (s *Switch) SendHTLC(nextNode [33]byte, htlc *lnwire.UpdateAddHTLC,
|
||||||
case e := <-payment.err:
|
case e := <-payment.err:
|
||||||
err = e
|
err = e
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return zeroPreimage, errors.New("htlc switch have been stopped " +
|
return zeroPreimage, ErrSwitchExiting
|
||||||
"while waiting for payment result")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case pkt := <-payment.response:
|
case pkt := <-payment.response:
|
||||||
response = pkt
|
response = pkt
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return zeroPreimage, errors.New("htlc switch have been stopped " +
|
return zeroPreimage, ErrSwitchExiting
|
||||||
"while waiting for payment result")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case p := <-payment.preimage:
|
case p := <-payment.preimage:
|
||||||
preimage = p
|
preimage = p
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return zeroPreimage, errors.New("htlc switch have been stopped " +
|
return zeroPreimage, ErrSwitchExiting
|
||||||
"while waiting for payment result")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove circuit since we are about to complete an add/fail of this
|
// Remove circuit since we are about to complete an add/fail of this
|
||||||
|
@ -722,14 +723,14 @@ func (s *Switch) route(packet *htlcPacket) error {
|
||||||
select {
|
select {
|
||||||
case s.htlcPlex <- command:
|
case s.htlcPlex <- command:
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return errors.New("Htlc Switch was stopped")
|
return ErrSwitchExiting
|
||||||
}
|
}
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case err := <-command.err:
|
case err := <-command.err:
|
||||||
return err
|
return err
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
return errors.New("Htlc Switch was stopped")
|
return ErrSwitchExiting
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1374,8 +1375,7 @@ func (s *Switch) CloseLink(chanPoint *wire.OutPoint, closeType ChannelCloseType,
|
||||||
return updateChan, errChan
|
return updateChan, errChan
|
||||||
|
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
errChan <- errors.New("unable close channel link, htlc " +
|
errChan <- ErrSwitchExiting
|
||||||
"switch already stopped")
|
|
||||||
close(updateChan)
|
close(updateChan)
|
||||||
return updateChan, errChan
|
return updateChan, errChan
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue