summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesus Menendez-Castellano <jesus.menendez.castellano@gmail.com>2012-04-30 01:34:41 -0700
committerJürg Billeter <j@bitron.ch>2012-06-23 17:15:32 +0200
commit67c700bb55c35229e9fb79442ba496206aebe018 (patch)
treea55c545ae5205fa6548c012a497f647c5b3c3bcc
parente65d40f1a31132e1290ff4177e095e1fc9e4343c (diff)
downloadvala-67c700bb55c35229e9fb79442ba496206aebe018.tar.gz
posix: add execv(p) and sigqueue methods, make sigval_t a simple type
Fixes bug 673391.
-rw-r--r--vapi/posix.vapi7
1 files changed, 7 insertions, 0 deletions
diff --git a/vapi/posix.vapi b/vapi/posix.vapi
index e4461a4ab..9329ace20 100644
--- a/vapi/posix.vapi
+++ b/vapi/posix.vapi
@@ -1053,6 +1053,7 @@ namespace Posix {
int sa_flags;
}
+ [SimpleType]
[CCode (cname = "sigval_t", cheader_filename = "signal.h")]
public struct sigval_t {
int sival_int;
@@ -1100,6 +1101,8 @@ namespace Posix {
[CCode (cheader_filename = "signal.h")]
public int sigprocmask (int how, sigset_t sigset, sigset_t oset);
[CCode (cheader_filename = "signal.h")]
+ public int sigqueue (pid_t pid, int signum, sigval_t val);
+ [CCode (cheader_filename = "signal.h")]
public int sigsuspend (sigset_t sigset);
[CCode (cheader_filename = "signal.h")]
public int sigpending (sigset_t sigset);
@@ -1800,6 +1803,10 @@ namespace Posix {
[CCode (cheader_filename = "unistd.h")]
public int execlp (string path, params string[] arg);
[CCode (cheader_filename = "unistd.h")]
+ public int execv (string path, [CCode (array_length = false, null_terminated = true)] string[] arg);
+ [CCode (cheader_filename = "unistd.h")]
+ public int execvp (string path, [CCode (array_length = false, null_terminated = true)] string[] arg);
+ [CCode (cheader_filename = "unistd.h")]
public int pipe ([CCode (array_length = false, null_terminated = false)] int[] pipefd);
[CCode (cheader_filename = "unistd.h")]
public ssize_t read (int fd, void* buf, size_t count);