30 lines
496 B
Go
30 lines
496 B
Go
package sctp
|
|
|
|
// control queue
|
|
|
|
type controlQueue struct {
|
|
queue []*packet
|
|
}
|
|
|
|
func newControlQueue() *controlQueue {
|
|
return &controlQueue{queue: []*packet{}}
|
|
}
|
|
|
|
func (q *controlQueue) push(c *packet) {
|
|
q.queue = append(q.queue, c)
|
|
}
|
|
|
|
func (q *controlQueue) pushAll(packets []*packet) {
|
|
q.queue = append(q.queue, packets...)
|
|
}
|
|
|
|
func (q *controlQueue) popAll() []*packet {
|
|
packets := q.queue
|
|
q.queue = []*packet{}
|
|
return packets
|
|
}
|
|
|
|
func (q *controlQueue) size() int {
|
|
return len(q.queue)
|
|
}
|