.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "SKB_SEQ_READ" "9" "09 October 2005" "" ""
.SH NAME
skb_seq_read \- Sequentially read skb data
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
unsigned int skb_seq_read (unsigned int \fIconsumed\fB, const u8 ** \fIdata\fB, struct skb_seq_state * \fIst\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIconsumed\fB\fR
number of bytes consumed by the caller so far
.TP
\fB\fIdata\fB\fR
destination pointer for data to be returned
.TP
\fB\fIst\fB\fR
state variable
.SH "DESCRIPTION"
.PP
Reads a block of skb data at &consumed relative to the
lower offset specified to \fBskb_prepare_seq_read\fR\&. Assigns
the head of the data block to &data and returns the length
of the block or 0 if the end of the skb data or the upper
offset has been reached.
.PP
The caller is not required to consume all of the data
returned, i.e. &consumed is typically set to the number
of bytes already consumed and the next call to
\fBskb_seq_read\fR will return the remaining part of the block.
.SH "NOTE"
.PP
Fragment lists within fragments are not implemented
at the moment, state->root_skb could be replaced with
a stack for this purpose.
.SH "NOTE"
.PP
Fragment lists within fragments are not implemented
at the moment, state->root_skb could be replaced with
a stack for this purpose.