Sponsored Content
Top Forums Programming Redirecting Terminal to Local Application! Post 302479770 by JonhyM on Monday 13th of December 2010 01:01:45 AM
Old 12-13-2010
Code:
#include <stdio.h>

/* These are useful to keep the source readable */
#ifndef STDIN_FILENO
# define STDIN_FILENO 0
#endif
#ifndef STDOUT_FILENO
# define STDOUT_FILENO 1
#endif
#ifndef STDERR_FILENO
# define STDERR_FILENO 2
#endif
#ifndef SHUT_RDWR
# define SHUT_RDWR 2
#endif

char *opt_exec = NULL;  /* program to exec after connecting */
static void ncexec(FILE *MyOutput)
{
  int saved_stderr;
  char *p;
 // assert(ncsock && (ncsock->fd >= 0));
  /* save the stderr fd because we may need it later */
  saved_stderr = dup(STDERR_FILENO);
  /* duplicate the socket for the child program */
  dup2(MyOutput, STDIN_FILENO); /* the precise order of fiddlage */
  close(MyOutput);   /* is apparently crucial; this is */
  dup2(STDIN_FILENO, STDOUT_FILENO); /* swiped directly out of "inetd". */
  dup2(STDIN_FILENO, STDERR_FILENO); /* also duplicate the stderr channel */
  /* change the label for the executed program */
  if ((p = strrchr(opt_exec, '/')))
    p++;   /* shorter argv[0] */
  else
    p = opt_exec;
  /* replace this process with the new one */
#ifndef USE_OLD_COMPAT
  execl("/bin/sh", p, "-c", opt_exec, NULL);
#else
  execl(opt_exec, p, NULL);
#endif
  dup2(saved_stderr, STDERR_FILENO);
//  ncprint(NCPRINT_ERROR | NCPRINT_EXIT, _("Couldn't execute %s: %s"),
 //  opt_exec, strerror(errno));
}    /* end of ncexec() */
int main()
{
 FILE *fOutput;
 fOutput = fopen("/mnt/hgfs/VMShares/output.txt", "w+");
 if (fOutput == NULL) printf("fOutput Error\n");
 if (fork() == 0)
 {
  printf("Fork() Success !\n");
  ncexec(fOutput);
 }
 sleep(2);
 //fwrite("ls", 4, 2, fOutput);
 return 0;
}

i took this part off Netcat, i created a file descriptor of my owen using fopen and used that in the code insted of "ncsock->fd" ? and used fork() after that since it will be replacing the process using execl()

but it didnt work, no output on the file i created Smilie

sorry for the stupid question, im new to the world of linux and c..

thanks.

Last edited by JonhyM; 12-13-2010 at 02:24 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

redirecting one terminal into an other??

Hi guys; I want to show what am I doing on a terminal into another. I did something close but its not working really good. Example: cat /dev/pts/12 >/dev/pts/13 where 12 is my terminal and 13 its the other terminal. This is usefull for me to share my small unix knowledge to other people... (4 Replies)
Discussion started by: piltrafa
4 Replies

2. Shell Programming and Scripting

Redirecting output to a local file after sshing

ssh $USR@$host /bin/bash <<EOF awk ' BEGIN{f=0} !f { s=$0; sub(/,.+/, "", s); gsub(//, " ", s); t=(systime()-mktime(s)); if(t<=14400) f=1 } f ' /home/error.log >> error.txt EOFWe are trying to connect to a remote server through ssh and read values from error.log within last 4 hours.However, the... (3 Replies)
Discussion started by: Deepthz
3 Replies

3. Solaris

Can i bind to a local login terminal running using rsh or remotely

Hi Can i ask? I had multiple solaris workstation running and some local users using it. Is it possible to bind to the local user terminal or console he's using as if like the user well type and I can see it and what my typing in the local user see it also. Is it possible.. Thanks. (3 Replies)
Discussion started by: jao_madn
3 Replies

4. Shell Programming and Scripting

redirecting the terminal to file

Hi, I want to save the whole Output of the terminal in a file. I dont want to redirect a single command to a file (ls -l > test.txt), I want to redirect the whole last 40 lines into a file. Maybe i can read out the terminal while working with it, but i cant find a way to save the whole... (2 Replies)
Discussion started by: niratschi
2 Replies

5. Slackware

X terminal: Redirecting remote sound to my local audio device

Hello everybody, I'm testing some aspects of X Terminal implementation and it's going great. I can use remote applications on my local slow workstation at remote's processor speed by redirecting the remote DISPLAY variable to "my_local_ip:0.0"; but i'm having troubles to get remote audio and... (2 Replies)
Discussion started by: semash!
2 Replies

6. UNIX for Dummies Questions & Answers

pbpaste to application in terminal

Is it possible to execute a pbpaste command to an application or current application in focus? Thanks (0 Replies)
Discussion started by: fhill2
0 Replies

7. Shell Programming and Scripting

Redirecting script output to terminal

When ever i started my terminal,Every time I have to change the directory like "cd user/documents/ravi/folder2/folder3" Without typing this entire command every time ,I placed "alias c='cd user/documents/ravi/folder2/folder3'" in .bash_profile file. so that i can able to execute command 'c'... (6 Replies)
Discussion started by: Raviteja saddal
6 Replies

8. IP Networking

How to know local IP address in X-Terminal?

Im using a X-Terminal in my windows pc to connect to a Linux server. Is there a way to know my local IP address in my x-terminal console? Here are few commands which didnt help me: ss_cc@MGTS5026-13sh1:~> finger Login Name Tty Idle Login Time Where loadhlr ... (6 Replies)
Discussion started by: Arun_Linux
6 Replies

9. Shell Programming and Scripting

Cannot get terminal application to launch with a graphical launcher when successful in terminal

I have been having an extremely annoying problem. For the record, I am relatively new at this. I've only been working with unix-based OS's for roughly two years, mostly Xubuntu and some Kali. I am pretty familiar with the BASH language, as that's the default shell for debian. Now, I've made this... (16 Replies)
Discussion started by: Huitzilopochtli
16 Replies

10. Shell Programming and Scripting

Redirecting terminal to variable

when i do something like this: bona=$(echo hi2 > /dev/pts/1 ; printf '%s\n' "" | sed '/^$/d') i get: hi2 and the $bona variable is empty, when I run: echo ${bona} i get the result "hi2" outside of the variable. I want it stored in the bona variable with nothing outputted to the... (6 Replies)
Discussion started by: SkySmart
6 Replies
TYPES(5)						      BSD File Formats Manual							  TYPES(5)

NAME
types -- system data types SYNOPSIS
#include <sys/types.h> DESCRIPTION
The file sys/types.h contains the defined data types used in the kernel (most are used through out the system). #ifndef _TYPES_H_ #define _TYPES_H_ typedef short dev_t; #ifndef _POSIX_SOURCE /* major part of a device */ #define major(x) ((int)(((unsigned)(x)>>8)&0377)) /* minor part of a device */ #define minor(x) ((int)((x)&0377)) /* make a device number */ #define makedev(x,y) ((dev_t)(((x)<<8) | (y))) #endif typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef unsigned short ushort; /* Sys V compatibility */ #if !defined(_ANSI_SOURCE) && !defined(_POSIX_C_SOURCE) #include <machine/types.h> #endif #ifdef _CLOCK_T_ typedef _CLOCK_T_ clock_t; #undef _CLOCK_T_ #endif #ifdef _SIZE_T_ typedef _SIZE_T_ size_t; #undef _SIZE_T_ #endif #ifdef _TIME_T_ typedef _TIME_T_ time_t; #undef _TIME_T_ #endif typedef u_int64_t u_quad_t; typedef int64_t quad_t typedef quad_t * qaddr_t; /* should be typedef quad * qaddr_t; */ typedef long daddr_t; typedef char * caddr_t; #ifdef _DARWIN_FEATURE_64_BIT_INODE typedef u_int64_t ino_t; #else /* !_DARWIN_FEATURE_64_BIT_INODE */ typedef u_int ino_t; #endif /* _DARWIN_FEATURE_64_BIT_INODE */ typedef long swblk_t; typedef long segsz_t; typedef int64_t off_t; typedef u_int uid_t; typedef u_int gid_t; typedef int pid_t; typedef u_short nlink_t; typedef u_short mode_t; typedef u_long fixpt_t; #ifndef _POSIX_SOURCE #define NBBY 8 /* number of bits in a byte */ /* * Select uses bit masks of file descriptors in longs. These macros * manipulate such bit fields (the filesystem macros use chars). * FD_SETSIZE may be defined by the user, but the default here should * be >= NOFILE (param.h). */ #ifndef FD_SETSIZE #define FD_SETSIZE 1024 #endif typedef long fd_mask; #define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */ #ifndef howmany #define howmany(x, y) (((x)+((y)-1))/(y)) #endif typedef struct fd_set { fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)]; } fd_set; #define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS))) #define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) #define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS))) #define FD_COPY(f, t) bcopy(f, t, sizeof(*(f))) #define FD_ZERO(p) bzero((char *)(p), sizeof(*(p))) #endif /* !_POSIX_SOURCE */ #endif /* !_TYPES_H_ */ SEE ALSO
adb(1), lseek(2), time(3), fs(5) HISTORY
A types file appeared in Version 7 AT&T UNIX. Darwin May 15, 2008 Darwin
All times are GMT -4. The time now is 01:45 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy