TESTS: add a python wrapper for sockpair@

This is a python wrapper which creates a socketpair and passes it as two
environment variable to haproxy.

It's the easiest way to test the sockpair protocol in haproxy.
This commit is contained in:
William Lallemand 2018-09-11 16:51:30 +02:00 committed by Willy Tarreau
parent 2fe7dd0b2e
commit 7755f9f2be
1 changed files with 28 additions and 0 deletions

28
tests/test-sockpair.py Normal file
View File

@ -0,0 +1,28 @@
#!/usr/bin/python
"""
Python wrapper example to test socketpair protocol
./test-socketpair.py test.cfg
use sockpair@${FD1} and sockpair@${FD2} in your configuration file
"""
import socket, os, sys
s = socket.socketpair(socket.AF_UNIX, socket.SOCK_STREAM)
os.set_inheritable(s[0].fileno(), 1)
os.set_inheritable(s[1].fileno(), 1)
FD1 = s[0].fileno()
FD2 = s[1].fileno()
print("FD1={} FD2={}".format(FD1, FD2))
os.environ["FD1"] = str(FD1)
os.environ["FD2"] = str(FD2)
cmd = ["./haproxy",
"-f",
"{}".format(sys.argv[1])
]
os.execve(cmd[0], cmd, os.environ)