#include <windows.h>
#include <stdio.h>
#include <time.h>
#include "upcall.h"
#include "daemon_debug.h"
#include "util.h"
Go to the source code of this file.
◆ upcall_cancel()
Definition at line 189 of file upcall.c.
191{
193 if (
op &&
op->cancel)
195}
nfs41_updowncall_list upcall
static const nfs41_upcall_op * g_upcall_op_table[]
Referenced by thread_main().
◆ upcall_cleanup()
Definition at line 197 of file upcall.c.
199{
203
207 }
211 }
212}
#define INVALID_HANDLE_VALUE
void nfs41_root_deref(IN nfs41_root *root)
void nfs41_open_state_deref(IN nfs41_open_state *state)
#define NFSD_VERSION_MISMATCH
Referenced by thread_main().
◆ upcall_handle()
Definition at line 138 of file upcall.c.
140{
143
147 eprintf(
"upcall '%s' missing handle function!\n",
150 }
151
155}
void eprintf(LPCSTR format,...)
const char * opcode2string(DWORD opcode)
#define ERROR_NOT_SUPPORTED
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
Referenced by thread_main().
◆ upcall_marshall()
Definition at line 157 of file upcall.c.
162{
164 unsigned char *orig_buf =
buffer;
166
167
168write_downcall:
175
178
179
181 if (
op &&
op->marshall) {
183 goto write_downcall;
184 }
187}
int safe_write(unsigned char **pos, uint32_t *remaining, void *src, uint32_t src_len)
GLuint GLsizei GLsizei * length
Referenced by thread_main().
◆ upcall_parse()
Definition at line 75 of file upcall.c.
79{
83
89 }
90
91 dprintf(2,
"received %d bytes upcall data: processing upcall\n",
length);
93
94
105
106 dprintf(2,
"time=%ld version=%d xid=%d opcode=%s session=0x%x open_state=0x%x\n",
113 }
118 }
123
124
126 if (
op &&
op->parse) {
129 eprintf(
"parsing of upcall '%s' failed with %d.\n",
132 }
133 }
136}
int safe_read(unsigned char **pos, uint32_t *remaining, void *dest, uint32_t dest_len)
void print_hexbuf(int level, unsigned char *title, unsigned char *buf, int len)
static const WCHAR version[]
void nfs41_root_ref(IN nfs41_root *root)
void nfs41_open_state_ref(IN nfs41_open_state *state)
static const uint32_t g_upcall_op_table_size
Referenced by thread_main().
◆ g_upcall_op_table
Initial value:= {
}
const nfs41_upcall_op nfs41_op_close
const nfs41_upcall_op nfs41_op_readdir
const nfs41_upcall_op nfs41_op_open
const nfs41_upcall_op nfs41_op_setacl
const nfs41_upcall_op nfs41_op_getexattr
const nfs41_upcall_op nfs41_op_mount
const nfs41_upcall_op nfs41_op_setattr
const nfs41_upcall_op nfs41_op_symlink
const nfs41_upcall_op nfs41_op_unlock
const nfs41_upcall_op nfs41_op_setexattr
const nfs41_upcall_op nfs41_op_volume
const nfs41_upcall_op nfs41_op_lock
const nfs41_upcall_op nfs41_op_getattr
const nfs41_upcall_op nfs41_op_write
const nfs41_upcall_op nfs41_op_read
const nfs41_upcall_op nfs41_op_unmount
const nfs41_upcall_op nfs41_op_getacl
Definition at line 48 of file upcall.c.
Referenced by upcall_cancel(), upcall_cleanup(), upcall_handle(), upcall_marshall(), and upcall_parse().
◆ g_upcall_op_table_size
◆ nfs41_op_close
◆ nfs41_op_getacl
◆ nfs41_op_getattr
◆ nfs41_op_getexattr
Definition at line 689 of file ea.c.
◆ nfs41_op_lock
◆ nfs41_op_mount
◆ nfs41_op_open
◆ nfs41_op_read
◆ nfs41_op_readdir
◆ nfs41_op_setacl
◆ nfs41_op_setattr
◆ nfs41_op_setexattr
Definition at line 683 of file ea.c.
◆ nfs41_op_symlink
◆ nfs41_op_unlock
◆ nfs41_op_unmount
◆ nfs41_op_volume
◆ nfs41_op_write