Commit 7c499d47af275d3596fc84aaf37391f99174e97b
1 parent
c007710c
Exists in
master
and in
3 other branches
Working on windows IPC module.
Showing
1 changed file
with
16 additions
and
2 deletions
Show diff stats
src/lib3270++/windows/session.cc
... | ... | @@ -92,7 +92,7 @@ |
92 | 92 | IPC::Request & IPC::Request::call() { |
93 | 93 | |
94 | 94 | #ifdef DEBUG |
95 | - lib3270_trace_data(NULL,"Request block",(const char *) this->out.block, this->out.used); | |
95 | + // lib3270_trace_data(NULL,"Request block",(const char *) this->out.block, this->out.used); | |
96 | 96 | #endif // DEBUG |
97 | 97 | |
98 | 98 | in.current = 0; |
... | ... | @@ -111,10 +111,24 @@ |
111 | 111 | |
112 | 112 | } |
113 | 113 | |
114 | + debug("Received response \"", in.block, "\" with ", in.used, " bytes"); | |
114 | 115 | #ifdef DEBUG |
115 | - lib3270_trace_data(NULL,"Response block",(const char *) this->in.block, this->in.used); | |
116 | + // lib3270_trace_data(NULL,"Response block",(const char *) this->in.block, this->in.used); | |
116 | 117 | #endif // DEBUG |
117 | 118 | |
119 | + // Extract response name | |
120 | + in.current = strlen((const char *) in.block)+1; | |
121 | + | |
122 | + // Extract return code | |
123 | + uint16_t rc = *((uint16_t *) (in.block + in.current)); | |
124 | + in.current += sizeof(uint16_t); | |
125 | + | |
126 | + // Extract argc | |
127 | + uint16_t argc = *((uint16_t *) (in.block + in.current)); | |
128 | + in.current += sizeof(uint16_t); | |
129 | + | |
130 | + debug("Received response \"", ((const char *) in.block), "\" with rc=", rc, " and ", argc, " arguments"); | |
131 | + | |
118 | 132 | return *this; |
119 | 133 | } |
120 | 134 | ... | ... |