quickexec.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <stdio.h>
00022 #include <sys/types.h>
00023 #include <sys/stat.h>
00024 #include <unistd.h>
00025 #include <fcntl.h>
00026
00027 #define QUICKEXEC "/tmp/.quickexec"
00028
00029 int quickexecv( const char *path, const char *argv[] )
00030 {
00031 int fd = open( QUICKEXEC, O_WRONLY );
00032 if ( fd == -1 ) {
00033 perror( "quickexec pipe" );
00034 return -1;
00035 }
00036 write( fd, path, strlen( path )+1 );
00037 const char **s = argv;
00038 while( *s ) {
00039 write( fd, *s, strlen( *s )+1 );
00040 ++s;
00041 }
00042 close(fd);
00043 return 0;
00044 }
00045
00046 int quickexec( const char *path, const char *, ...)
00047 {
00048 int fd = open( QUICKEXEC, O_WRONLY );
00049 if ( fd == -1 ) {
00050 perror( "quickexec pipe" );
00051 return -1;
00052 }
00053 const char** s = &path;
00054 do {
00055 write( fd, *s, strlen( *s )+1 );
00056 } while ( *(++s) );
00057
00058 close( fd );
00059
00060 return 0;
00061 }
This file is part of the documentation for OPIE Version 1.5.5.