2015-10-12 21:54:33 +03:00
|
|
|
import socket
|
|
|
|
import os
|
|
|
|
|
2018-09-20 22:22:34 +00:00
|
|
|
|
2015-10-12 21:54:33 +03:00
|
|
|
def create_fds():
|
2019-09-07 15:46:22 +03:00
|
|
|
(sk1, sk2) = socket.socketpair(socket.AF_UNIX, socket.SOCK_STREAM)
|
|
|
|
(sk3, sk4) = socket.socketpair(socket.AF_UNIX, socket.SOCK_STREAM)
|
|
|
|
return [(sk1.makefile("wb"), sk2.makefile("rb")),
|
|
|
|
(sk3.makefile("wb"), sk4.makefile("rb"))]
|
2015-10-12 21:54:33 +03:00
|
|
|
|
2018-09-20 22:22:34 +00:00
|
|
|
|
2015-10-12 21:54:33 +03:00
|
|
|
def __sock_ino(sockf):
|
2019-09-07 15:46:22 +03:00
|
|
|
return os.fstat(sockf.fileno()).st_ino
|
2015-10-12 21:54:33 +03:00
|
|
|
|
2018-09-20 22:22:34 +00:00
|
|
|
|
2015-10-12 21:54:33 +03:00
|
|
|
def filename(sockf):
|
2019-09-07 15:46:22 +03:00
|
|
|
return 'socket:[%d]' % __sock_ino(sockf)
|
2015-10-12 21:54:33 +03:00
|
|
|
|
2018-09-20 22:22:34 +00:00
|
|
|
|
2015-10-12 21:54:33 +03:00
|
|
|
def dump_opts(sockf):
|
2019-09-07 15:46:22 +03:00
|
|
|
return ['--external', 'unix[%d]' % __sock_ino(sockf)]
|