William, I've thought about that. I think this is at the limits of what I this is reasonable for argument lists. If we want more (and we would want at least transparency) I would rather go with an options structure which can contain a much larger number of options. This is a bit ugly in C, but I think it could be livable.
OutbouncConnectOptions opt; TSOutboundConnectOptionsInit(&opt); opt.id = 17; opt.tag = "my-super-plugin"; opt.transparent = true; /* or 1? */ opt.something = some-other-value; struct sockaddr addr; /* initialize somehow */ opt.target = &addr; TSVConn vc = TSHttpConnectWithOpptions(opt); The key thing is that TSOutboundConnectionOptionsInit() would set everything to default values that could be ignored so you only have to set the options that you care about. Friday, May 23, 2014, 8:46:42 PM, you wrote: > This sounds very useful. (We did something hacky with the address to get > similar functionality just inside a plugin, this would be much cleaner.) > I wonder if it should take some extra optional arguments to allow doing > transparent stuff too. (So it would be a complete super-set.)