| 1394 | } |
| 1395 | |
| 1396 | copyin(src, dst, len) { |
| 1397 | this._verify_len(len); |
| 1398 | const main = this.main_sd; |
| 1399 | const worker = this.worker_sd; |
| 1400 | const addr_buf = this.addr_buf; |
| 1401 | const data_buf = this.data_buf; |
| 1402 | |
| 1403 | addr_buf.write64(0, this.pipe_addr); |
| 1404 | ssockopt(main, IPPROTO_IPV6, IPV6_PKTINFO, addr_buf); |
| 1405 | |
| 1406 | data_buf.write64(0, 0); |
| 1407 | ssockopt(worker, IPPROTO_IPV6, IPV6_PKTINFO, data_buf); |
| 1408 | |
| 1409 | addr_buf.write64(0, this.pipe_addr2); |
| 1410 | ssockopt(main, IPPROTO_IPV6, IPV6_PKTINFO, addr_buf); |
| 1411 | |
| 1412 | addr_buf.write64(0, dst); |
| 1413 | ssockopt(worker, IPPROTO_IPV6, IPV6_PKTINFO, addr_buf); |
| 1414 | |
| 1415 | sysi('write', this.wpipe, src, len); |
| 1416 | } |
| 1417 | |
| 1418 | copyout(src, dst, len) { |
| 1419 | this._verify_len(len); |