exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

uc.c

uc.c
Posted Jan 21, 2000
Authored by Michal Zalewski

nsuncat 0.01b - Unix socket connectivity from the command line. (works just like netcat for tcp/udp sockets)

tags | tool, udp, tcp
systems | unix
SHA-256 | 49088a575ee48d6c5401773d67d701fbde1b7fe01256a0d55e04ed9c19f06f5b

uc.c

Change Mirror Download
// (c) lcamtuf

#include <sys/socket.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <termios.h>
#include <signal.h>
#include <string.h>
#include <sys/un.h>

int saved,charmode,s,a;
struct termios chuj, orig;
struct sockaddr_un x;

void termset(int i) {
if (!charmode) return;
if (i) {
tcgetattr(0,&chuj);
if (!saved) tcgetattr(0,&orig);
saved=1;
chuj.c_lflag=0;
tcsetattr(0,TCSANOW,&chuj);
} else if (saved) tcsetattr(0,TCSANOW,&orig);
}

void sig(int x) {
shutdown(s,2);
close(s);
termset(0);
fprintf(stderr,"\npoink?! signal %d, aiee...\n",x);
exit(0);
}

char buf[1000];

int main(int argc,char* argv[]) {
if (argc-2) {
fprintf(stderr,"\nsuncat 0.01b - unix socket connectivity\n");
fprintf(stderr,"(c) 1999/2000 <lcamtuf@ids.pl>\n");
fprintf(stderr," usage: %s [%%]/socket/path\n",argv[0]);
fprintf(stderr," ('%%' enables charmode, full 8bit input)\n\n");
exit(1);
}
signal(SIGINT,sig); signal(SIGTERM,sig); signal(SIGPIPE,sig);
s=socket(PF_UNIX,SOCK_STREAM,0);
x.sun_family=AF_UNIX;
strncpy(buf,argv[1],100);
charmode=(buf[0]=='%');
termset(1);
strcpy(x.sun_path,&buf[charmode]);
if (connect(s,&x,sizeof(x))) { perror(&buf[charmode]); exit(1); }
fcntl(0,F_SETFL,O_NONBLOCK);
fcntl(s,F_SETFL,O_NONBLOCK);
while (1) {
usleep(10000);
a=read(0,buf,1000);
if (a<0 && errno!=EAGAIN) exit(3);
if (a>0) write(s,buf,a);
a=read(s,buf,1000);
if (a<0 && errno!=EAGAIN) exit(3);
if (a>0) write(0,buf,a);
}
}
Login or Register to add favorites

File Archive:

August 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    15 Files
  • 2
    Aug 2nd
    22 Files
  • 3
    Aug 3rd
    0 Files
  • 4
    Aug 4th
    0 Files
  • 5
    Aug 5th
    15 Files
  • 6
    Aug 6th
    11 Files
  • 7
    Aug 7th
    43 Files
  • 8
    Aug 8th
    42 Files
  • 9
    Aug 9th
    36 Files
  • 10
    Aug 10th
    0 Files
  • 11
    Aug 11th
    0 Files
  • 12
    Aug 12th
    0 Files
  • 13
    Aug 13th
    0 Files
  • 14
    Aug 14th
    0 Files
  • 15
    Aug 15th
    0 Files
  • 16
    Aug 16th
    0 Files
  • 17
    Aug 17th
    0 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close