The data is sent as an argument to the Master program. The data are two ints, one bigger than other (ex: 1000 and 2000).
Your program will likely crash or malfunction, since argv[0] is traditionally the name of the program, and the argument after the last one you give execl must be null, so try this:
The problem is, when I fork, I know the fd are inherited in that process, but once I call the slave program with execl, I don't know how to connect the two programs with a pipe.
They already are. The copies of the pipe you get in the child talk to the same pipe. They're already joined. Write in the child, read in the parent. There's nothing else to be done (except closing the write-end in the parent, anyway. Don't leave extra ends around, they cause your program to freeze)
Hi!
I'm writing a C program which gets from the command line a shell command (such as "ls" ) and I should execute it.
My Q is: how can I send a command to the shell?
I know I have to use one of the above functions, but I don't know how to use them.
Thanks
eyal (1 Reply)
Hi,
Is it possible to run a program from my C program using only the full pathname?
for example if I wanna call: "ls", so I whould have to use:
execl("/bin/ls", "ls", NULL);
Is it possible to do this using only:
"/bin/ls"
thanks (1 Reply)
I want to make simultanous sh commands in an exec command
for example I want to counts the lines in a file
wc -l my file.txt | awk -F" " '{print $1}'` works fine in sh but I want to implement it in a c code
the first part works like this
execl("/usr/bin/wc", "wc", "-l", "myfile.txt",... (1 Reply)
Hi,
we would appreciate if any one answer the below query.
void main()
{
printf(“ I am in main\n”);
execl(“/HOME/source/file2”,” /HOME/source/file2”,1,0);
printf(“after execl\n”);
}
How to step the file2 source code in GDB. (2 Replies)
hello everybody
how can i time the execution of execl() command inside my C code?
for example, i wrote..
execl("md5sum","md5sum","myprog",NULL);
i want to count the duration of the execl command!
thanx in advance! (2 Replies)
how to use find command in execl function,
I used:
execl("/usr/bin/find","find","~","-name","filename.c",0); but it shows
find: ~ no file and directory i need to get the path of the file from the home .:wall: (2 Replies)
when execl fails using the command lss, it doesnt go into the next line
execl("/bin/sh", "/bin/sh", "-c", command, NULL);
perror("execl failed"); exit(127);
for some reason the child process just stops and also the parent process also stops
so the line after the line that... (3 Replies)
Hi,
If I write in a c file :
execlp("date","date",NULL);
printf("A\n");
And then run through the terminal would "A" be printed ?
I understood that execlp will exit the program after it finished so the next lines of code won`t be executed afterwards.. Is that true ? (1 Reply)
Discussion started by: uniran
1 Replies
LEARN ABOUT HPUX
tels
tels(7) Miscellaneous Information Manual tels(7)NAME
tels, telm - STREAMS Telnet slave (pseudo-terminal) driver, STREAMS Telnet master driver (used by telnetd only), respectively
SYNOPSIS DESCRIPTION
A Telnet pseudo-terminal consists of a tightly-coupled pair of character devices, called the master device and slave device. The master
and slave device drivers work together to provide a Telnet connection on the server side where the master provides a connection to and the
slave provides a terminal device special file access for the Telnet application processes, as depicted below:
--------------------------
| Pseudo terminal functions|
Application <--> |--------------------------| <--> telnetd
Processes | Slave | Master |
| (tels) | (telm) |
--------------------------
The slave driver, with (STREAMS pty emulation module) and (STREAMS line discipline module) pushed on top (not shown for simplicity), pro-
vides a terminal interface as described in termio(7). Whereas devices that provide the terminal interface described in termio(7) have a
hardware device behind them; in contrast, the slave device has manipulating it through the master side of the Telnet pseudo terminal.
There are no nodes in the file system for each individual master device. Rather, the master driver is set up as a STREAMS clone(7) driver
with its major device number set to the major for the clone driver and its minor device number set to the major for the driver. The master
driver is opened by telnetd using the open(2) system call with as the device file parameter. The clone open finds the next available minor
number for the master device. The master device is available only if it and its corresponding slave device are not already opened.
In order to use the STREAMS Telnet subsystem, a node for the master driver and N number of Telnet slave devices must be installed.
The number of slave devices is set by a kernel tunable parameter called This can be modified using SAM; its default and minimum value is
60. The value of is the upper limit of the number of telnet sessions that can be opened.
Multiple opens are allowed on the Telnet slave device.
The master and slave drivers pass all STREAMS messages to their adjacent drivers. When the connection is closed from the Telnet client
side, an message is sent to the corresponding slave device which will render that slave device unusable. The process on the slave side
gets the errno when attempting a write(2) system call to the slave device file but it will be able to read any data remaining in the slave
stream. Finally, when all the data has been read, the read(2) system call will return 0, indicating that the slave can no longer be used.
AUTHOR
and were developed by HP.
FILES
Streams Telnet master clone device
Streams slave devices where
N is the minor number of the slave device and 0 < N <
SEE ALSO insf(1M), open(2), ioctl(2), streamio(7), ldterm(7), telnetd(1M), ptem(7).
tels(7)