Home | History | Annotate | Download | only in adb

Lines Matching refs:proc

147     JdwpProcess*  proc = _jdwp_list.next;
149 for ( ; proc != &_jdwp_list; proc = proc->next ) {
153 if (proc->pid < 0)
156 len = snprintf(p, end-p, "%d\n", proc->pid);
180 jdwp_process_free( JdwpProcess* proc )
182 if (proc) {
185 proc->prev->next = proc->next;
186 proc->next->prev = proc->prev;
188 if (proc->socket >= 0) {
189 adb_shutdown(proc->socket);
190 adb_close(proc->socket);
191 proc->socket = -1;
194 if (proc->fde != NULL) {
195 fdevent_destroy(proc->fde);
196 proc->fde = NULL;
198 proc->pid = -1;
200 for (n = 0; n < proc->out_count; n++) {
201 adb_close(proc->out_fds[n]);
203 proc->out_count = 0;
205 free(proc);
218 JdwpProcess* proc = reinterpret_cast<JdwpProcess*>(
219 calloc(1, sizeof(*proc)));
221 if (proc == NULL) {
226 proc->socket = socket;
227 proc->pid = -1;
228 proc->next = proc;
229 proc->prev = proc;
231 proc->fde = fdevent_create( socket, jdwp_process_event, proc );
232 if (proc->fde == NULL) {
234 free(proc);
238 proc->fde->state |= FDE_DONT_CLOSE;
239 proc->in_len = 0;
240 proc->out_count = 0;
243 proc->next = &_jdwp_list;
244 proc->prev = proc->next->prev;
246 proc->prev->next = proc;
247 proc->next->prev = proc;
250 fdevent_add(proc->fde, FDE_READ);
252 return proc;
259 JdwpProcess* proc = reinterpret_cast<JdwpProcess*>(_proc);
262 if (proc->pid < 0) {
264 char* p = proc->in_buff + proc->in_len;
265 int size = 4 - proc->in_len;
285 proc->in_len += len;
289 memcpy(temp, proc->in_buff, 4);
292 if (sscanf( temp, "%04x", &proc->pid ) != 1) {
293 D("could not decode JDWP %p PID number: '%s'", proc, temp);
298 D("Adding pid %d to jdwp process list", proc->pid);
316 D("terminating JDWP %d connection: %s", proc->pid,
323 proc->pid, len );
328 if (proc->pid >= 0) {
329 D( "remove pid %d to jdwp process list", proc->pid );
331 jdwp_process_free(proc);
338 proc->pid, proc->out_count, proc->out_fds[0]);
339 if (proc->out_count > 0) {
340 int fd = proc->out_fds[0];
364 if (!set_file_block_mode(proc->socket, true)) {
365 VLOG(JDWP) << "failed to set blocking mode for fd " << proc->socket;
370 ret = sendmsg(proc->socket, &msg, 0);
378 proc->pid, strerror(errno));
383 fd, proc->pid);
385 for (n = 1; n < proc->out_count; n++)
386 proc->out_fds[n-1] = proc->out_fds[n];
388 if (!set_file_block_mode(proc->socket, false)) {
389 VLOG(JDWP) << "failed to set non-blocking mode for fd " << proc->socket;
393 if (--proc->out_count == 0)
394 fdevent_del( proc->fde, FDE_WRITE );
403 JdwpProcess* proc = _jdwp_list.next;
406 for ( ; proc != &_jdwp_list; proc = proc->next ) {
407 if (proc->pid == pid) {
418 if (proc->out_count >= MAX_OUT_FDS) {
431 proc->out_fds[ proc->out_count ] = fds[1];
432 if (++proc->out_count == 1)
433 fdevent_add( proc->fde, FDE_WRITE );
530 JdwpProcess* proc;
550 proc = jdwp_process_alloc( s );
551 if (proc == NULL)