lynch@batcomputer.tn.cornell.edu (Tim Lynch) (03/21/89)
I'm trying to build tn3270 on my 850 running HP-UX 2.1. I've hit a snag with a call to fcntl where the code passes F_GETOWN as the second argument to fcntl. Looking at the man pages for fcntl on a BSD system, I see the following: F_GETOWN gets the process ID or process group currently receiving SIGIO and SIGURG signals; process groups are returned as negative values. F_SETOWN sets the process or process group to receive SIGIO and SIGURG signals; process groups are specified by supplying arg as negative, otherwise arg is inter- preted as a process ID. Is there some equivalent function call I can make under HP-UX to retreive what fcntl(...F_GETOWN...) returns? Alternatively, does someone have a version of tn3270 for HP-UX? Tim Lynch
rml@hpfcdc.HP.COM (Bob Lenk) (03/22/89)
> I'm trying to build tn3270 on my 850 running HP-UX 2.1. I've hit > a snag with a call to fcntl where the code passes F_GETOWN as the > second argument to fcntl. Looking at the man pages for fcntl on a > BSD system, I see the following: > > F_GETOWN > F_SETOWN Similar functionality is availible via the ioctl() commands FIOGSAIOOWN and FIOSSAIOOWN. They are documented under ioctl(5) and are based on the BSD features, with the following differences: - Only a single process rather than a process group can receive the signals. This is because it is difficult or impossible to enforce security when sending signals to process groups. BSD does not enforce security; this is not a major problem because SIGIO and SIGURG are ignored by default. - The names are changed because of the above difference. - While BSD supports the functionality via both fcntl() and ioctl(), HP-UX supports it only via ioctl() because it is a call to the underlying file, not the open instance (file table entry) and thus more in keeping with the spirit of ioctl(). - The calls do not work on pipes as in BSD, because HP-UX pipes are not sockets. Bob Lenk hplabs!hpfcla!rml rml%hpfcla@hplabs.hp.com