Sponsored Content
Full Discussion: When execl fails in C
Top Forums Programming When execl fails in C Post 302505991 by macroideal on Friday 18th of March 2011 06:52:26 AM
Old 03-18-2011
maybe it is because a signal in the child process forced the main process quit. you can catch the terminal signals or ignore them.
 

10 More Discussions You Might Find Interesting

1. Programming

execl, execv or execp

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)
Discussion started by: azran
1 Replies

2. Programming

execl / execv ?

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)
Discussion started by: owijust
1 Replies

3. Programming

How to specify path of a function within execl

Consider the following scenario program1: main() { ...... execl("path","function",...); ..... } function() { ----- ------- } Now i want to include the path of function in execl. How to do this. should the path be the path of function's executable file. If it so how... (1 Reply)
Discussion started by: bankpro
1 Replies

4. Programming

execl()

can anyone explain how to pass arguments of a program in execl function pls explain with a sample code. (2 Replies)
Discussion started by: bankpro
2 Replies

5. Shell Programming and Scripting

need help with execl command

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)
Discussion started by: walnut
1 Replies

6. Programming

execl function at GDB

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)
Discussion started by: RAMESHPRABUDASS
2 Replies

7. Programming

time execl

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)
Discussion started by: nicos
2 Replies

8. Red Hat

execl command

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)
Discussion started by: Mahendravarma
2 Replies

9. Programming

[C] execl and pipes?

Hi, I have two programs, one is named "Master" and the other one "slave". What I want to do is , when I execute Master, inside slave will be called by excecl, do some calculations, and send those to the master program... A little example of what I am failing to do: if ((PID1=fork())==0) { //... (6 Replies)
Discussion started by: lamachejo
6 Replies

10. UNIX for Beginners Questions & Answers

Execl() command

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
signal(3UCB)					     SunOS/BSD Compatibility Library Functions					      signal(3UCB)

NAME
signal - simplified software signal facilities SYNOPSIS
/usr/ucb/cc [ flag ... ] file ... #include <signal.h> void (*signal(sig, func))(); int sig; void (*func)(); DESCRIPTION
signal() is a simplified interface to the more general sigvec(3UCB) facility. Programs that use signal() in preference to sigvec() are more likely to be portable to all systems. A signal is generated by some abnormal event, initiated by a user at a terminal (quit, interrupt, stop), by a program error (bus error, etc.), by request of another program (kill), or when a process is stopped because it wishes to access its control terminal while in the background (see termio(7I)). Signals are optionally generated when a process resumes after being stopped, when the status of child pro- cesses changes, or when input is ready at the control terminal. Most signals cause termination of the receiving process if no action is taken; some signals instead cause the process receiving them to be stopped, or are simply discarded if the process has not requested other- wise. Except for the SIGKILL and SIGSTOP signals, the signal() call allows signals either to be ignored or to interrupt to a specified location. See sigvec(3UCB) for a complete list of the signals. If func is SIG_DFL, the default action for signal sig is reinstated; this default is termination (with a core image for starred signals) except for signals marked with o or a dagger.. Signals marked with o are discarded if the action is SIG_DFL; signals marked with a dagger cause the process to stop. If func is SIG_IGN the signal is subsequently ignored and pending instances of the signal are discarded. Other- wise, when the signal occurs further occurrences of the signal are automatically blocked and func is called. A return from the function unblocks the handled signal and continues the process at the point it was interrupted. If a caught signal occurs during certain functions, terminating the call prematurely, the call is automatically restarted. In particular this can occur during a read(2) or write(2) on a slow device (such as a terminal; but not a file) and during a wait(3C). The value of signal() is the previous (or initial) value of func for the particular signal. After a fork(2) or vfork(2) the child inherits all signals. An exec(2) resets all caught signals to the default action; ignored signals remain ignored. RETURN VALUES
The previous action is returned on a successful call. Otherwise,-1 is returned and errno is set to indicate the error. ERRORS
signal() will fail and no action will take place if the following occurs: EINVAL sig is not a valid signal number, or is SIGKILL or SIGSTOP. SEE ALSO
kill(1), exec(2), fcntl(2), fork(2), getitimer(2), getrlimit(2), kill(2), read(2), sigaction(2), write(2), abort(3C), ptrace(3C), setjmp(3C), setjmp(3UCB), sigblock(3UCB), signal(3C), signal.h(3HEAD), sigstack(3UCB), sigvec(3UCB), wait(3C), wait(3UCB), termio(7I) NOTES
Use of these interfaces should be restricted to only applications written on BSD platforms. Use of these interfaces with any of the system libraries or in multi-threaded applications is unsupported. The handler routine func can be declared: void handler(signum) int signum; Here signum is the signal number. See sigvec(3UCB) for more information. SunOS 5.10 10 Jan 1996 signal(3UCB)
All times are GMT -4. The time now is 12:42 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy