| | 536 | | tm_connect(tp, mp) |
| | 537 | | struct task *tp; |
| | 538 | | struct pmsg *mp; |
| | 539 | | { |
| | 540 | | int ver; |
| | 541 | | char authfn[PVMTMPNAMLEN];
|
| | 542 | | int d; |
| | 543 | | int cc; |
| | 544 | | |
| | 545 | | if (upkint(mp, &ver) || upkstr(mp, authfn, sizeof(authfn))) { |
| | 546 | | pvmlogerror("tm_connect() bad msg format\n"); |
| | 547 | | goto bail; |
| | 548 | | } |
| | 549 | | |
| | 550 | | |
| | 551 | | |
| | 552 | | |
| | 553 | | |
| | 554 | | |
| | 555 | | if (ver != TDPROTOCOL) {
|
| | 556 | | pvmlogprintf("tm_connect() t-d protocol mismatch (%d/%d)\n", |
| | 557 | | ver, TDPROTOCOL);
|
| | | | ... |
| | 613 | | |
| | 614 | | mp = replymessage(mp); |
| | 615 | | pkint(mp, TDPROTOCOL);
|
| | 616 | | pkint(mp, 1); |
| | 617 | | pkstr(mp, tp->t_authnam); |
| | 618 | | mp->m_flag |= MM_PRIO;
|
| | 619 | | mesg_to_task(tp, mp); |
| | 620 | | pmsg_unref(mp); |
| | 621 | | return 0; |
| | 622 | | |
| | 623 | | bail: |
| | 624 | | |
| | 625 | | tp->t_flag |= TF_CLOSE;
|
| | 626 | | |
| | 627 | | |
| | 628 | | |
| | 629 | | |