72 val =
line +
sizeof(
"SVendor:");
77 val =
line +
sizeof(
"SDevice:");
112 char *lspci_command[5] = {
"lspci",
"-m",
"-n",
"-v",
NULL };
123 error(
"lspci protocol error: Invalid line '%s'\n",
line);
134 static char *rest =
NULL;
137 pkglen =
s->end -
s->p;
173 hexdump(
s->channel_hdr + 8,
s->end -
s->channel_hdr - 8);
int strcmp(const char *String1, const char *String2)
ACPI_SIZE strlen(const char *String)
char * strchr(const char *String, int ch)
VCHANNEL * channel_register(char *name, uint32 flags, void(*callback)(STREAM))
STREAM channel_init(VCHANNEL *channel, uint32 length)
void channel_send(STREAM s, VCHANNEL *channel)
#define CHANNEL_OPTION_ENCRYPT_RDP
#define CHANNEL_OPTION_INITIALIZED
#define out_uint8p(s, v, n)
RD_BOOL str_startswith(const char *s, const char *prefix)
RD_BOOL str_handle_lines(const char *input, char **rest, str_handle_lines_t linehandler, void *data)
void hexdump(unsigned char *p, unsigned int len)
RD_BOOL subprocess(char *const argv[], str_handle_lines_t linehandler, void *data)
#define STRNCPY(dst, src, n)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLuint GLenum GLsizei const GLchar * buf
_Check_return_ long __cdecl strtol(_In_z_ const char *_Str, _Out_opt_ _Deref_post_z_ char **_EndPtr, _In_ int _Radix)
struct _pci_device pci_device
static void lspci_process(RDPCLIENT *This, STREAM s)
static VCHANNEL * lspci_channel
static BOOL handle_child_line(RDPCLIENT *This, const char *line, void *data)
static void lspci_send(RDPCLIENT *This, const char *output)
static pci_device current_device
static BOOL lspci_process_line(RDPCLIENT *This, const char *line, void *data)
_Check_return_ _CRTIMP size_t __cdecl strspn(_In_z_ const char *_Str, _In_z_ const char *_Control)