libsmb/clistr.c

ソースコードを見る。

関数

size_t clistr_push_fn (const char *function, unsigned int line, struct cli_state *cli, void *dest, const char *src, int dest_len, int flags)
size_t clistr_pull_fn (const char *function, unsigned int line, struct cli_state *cli, char *dest, const void *src, int dest_len, int src_len, int flags)
size_t clistr_align_out (struct cli_state *cli, const void *p, int flags)
size_t clistr_align_in (struct cli_state *cli, const void *p, int flags)


関数

size_t clistr_push_fn ( const char *  function,
unsigned int  line,
struct cli_state cli,
void *  dest,
const char *  src,
int  dest_len,
int  flags 
)

clistr.c24 行で定義されています。

参照先 cli_state::bufsizeclicli_state::outbufpush_string_fn().

00027 {
00028         size_t buf_used = PTR_DIFF(dest, cli->outbuf);
00029         if (dest_len == -1) {
00030                 if (((ptrdiff_t)dest < (ptrdiff_t)cli->outbuf) || (buf_used > cli->bufsize)) {
00031                         DEBUG(0, ("Pushing string of 'unlimited' length into non-SMB buffer!\n"));
00032                         return push_string_fn(function, line, cli->outbuf, dest, src, -1, flags);
00033                 }
00034                 return push_string_fn(function, line, cli->outbuf, dest, src, cli->bufsize - buf_used, flags);
00035         }
00036         
00037         /* 'normal' push into size-specified buffer */
00038         return push_string_fn(function, line, cli->outbuf, dest, src, dest_len, flags);
00039 }

size_t clistr_pull_fn ( const char *  function,
unsigned int  line,
struct cli_state cli,
char *  dest,
const void *  src,
int  dest_len,
int  src_len,
int  flags 
)

clistr.c41 行で定義されています。

参照先 clicli_state::inbufpull_string_fn().

00045 {
00046         return pull_string_fn(function, line, cli->inbuf, dest, src, dest_len, src_len, flags);
00047 }

size_t clistr_align_out ( struct cli_state cli,
const void *  p,
int  flags 
)

clistr.c50 行で定義されています。

参照先 align_string()clicli_state::outbuf.

参照元 cli_nt_create_full().

00051 {
00052         return align_string(cli->outbuf, (const char *)p, flags);
00053 }

size_t clistr_align_in ( struct cli_state cli,
const void *  p,
int  flags 
)

clistr.c55 行で定義されています。

参照先 align_string()clicli_state::inbuf.

参照元 interpret_long_filename().

00056 {
00057         return align_string(cli->inbuf, (const char *)p, flags);
00058 }


Sambaに対してSat Aug 29 21:23:48 2009に生成されました。  doxygen 1.4.7