Welcome! Log In Create A New Profile

Advanced

Documentation of buf struct

June 28, 2015 11:14AM
I am not very clear on the purpose of different data members within the buf structure.(appended below)

After looking through the code, I can figure out the purpose of 

- pos,last (sliding window) 

- file_pos, file_last, start, end ,(data start and end)

- tag, (which module owns this buf)

- file (name of the file if any associated with the data)

- memory(cannot be released by any module that processes the buf).

- mmap (buf is memory map)

- last_in_chain(last in the chain of bufs)

- last_buf(last in the response)

- For temporary: can the temporary buffer be released by any module that processes it or can it be released by only the module that owns it as indicated in the tag



It will be good if the purpose of other data members is described also. Thanks for any inputs


struct ngx_buf_s {    u_char          *pos;    u_char          *last;    off_t            file_pos;    off_t            file_last;
    u_char          *start;         /* start of buffer */    u_char          *end;           /* end of buffer */    ngx_buf_tag_t    tag;    ngx_file_t      *file;    ngx_buf_t       *shadow;

    /* the buf's content could be changed */    unsigned         temporary:1;
    /*     * the buf's content is in a memory cache or in a read only memory     * and must not be changed     */    unsigned         memory:1;
    /* the buf's content is mmap()ed and must not be changed */    unsigned         mmap:1;
    unsigned         recycled:1;    unsigned         in_file:1;    unsigned         flush:1;    unsigned         sync:1;    unsigned         last_buf:1;    unsigned         last_in_chain:1;
    unsigned         last_shadow:1;    unsigned         temp_file:1;
    /* STUB */ int   num;};

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

Documentation of buf struct

rvrv7575 June 28, 2015 11:14AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 297
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready