- TFREE(sock->msg_buf);
- sock->msg_buflen *= 2;
- sock->msg_buflen += 100;
- sock->msg_buf= TALLOC(sock->msg_buflen);
- }
-
- hbytes_array(&message_val, iov.iov_base, sz);
- sockaddr_create(&peer_val, mh.msg_name, mh.msg_namelen);
-
- args[0]= ret_hb(ip, message_val); hbytes_empty(&message_val);
- args[1]= ret_sockaddr(ip, peer_val); sockaddr_clear(&peer_val);
- args[2]= ret_sockid(ip, sock);
- for (i=0; i<3; i++) Tcl_IncrRefCount(args[i]);
-
- invoke= Tcl_DuplicateObj(sock->script);
- Tcl_IncrRefCount(invoke);
-
- rc= Tcl_ListObjReplace(ip,invoke,sock->script_llength,0,3,args);
- for (i=0; i<3; i++) { Tcl_DecrRefCount(args[i]); args[i]= 0; }
- if (rc) goto x_rc;