01-16-2002
the source files(the third part)
I have forgotten to include some functions needed in file tel_cli.c, please append the belowed source code to the end of file tel_cli.c.
/*connectsock - allocate & connect a socket using TCP or TCP*/
int connectsock(const char *host,const char *service, const char *transport)
/* arguments:
* host --- name of host to which connection is desired
* service -- service associated with the desired port
* transport --- name of transport protocol to use ("tcp" or "udp")
*/
{
struct hostent *phe; /* pointer to host information entry */
struct servent *pse; /* pointer to service information entry */
struct protoent *ppe; /* pointer to protocol information entry */
struct sockaddr_in sin; /* an Internet endpoint addredd */
int s,type; /* socket descriptor and socket type */
memset(&sin,0,sizeof(sin));
sin.sin_family=AF_INET;
/* Map service name to port number */
if (pse = getservbyname(service,transport))
sin.sin_port = pse->s_port;
else if ((sin.sin_port = htons((u_short)atoi(service))) == 0 )
{
//errexit("can't get \"%s\" service entry\n",service);
printf("can't get \"%s\" service entry\n",service);
return 0;
}
/* Map host name to IP address,allowing for dotted decimal */
if (phe = gethostbyname(host))
memcpy(&sin.sin_addr,phe->h_addr,phe->h_length);
else if ((sin.sin_addr.s_addr = inet_addr(host)) == INADDR_NONE)
{
//errexit("can't get \"%s\" protocol entry\n",transport);
printf("can't get \"%s\" protocol entry\n",transport);
return 0;
}
/* Map transport protocol name to protocol number */
if ((ppe = getprotobyname(transport))==0)
{
//errexit("can't get \"%s\" protocol entry\n",transport);
printf("can't get \"%s\" protocol entry\n",transport);
return 0;
}
/* User protocol to choose a socket type */
if (strcmp(transport,"udp") == 0)
type = SOCK_DGRAM;
else
type = SOCK_STREAM;
/*Allocate a socket */
s = socket(PF_INET, type, ppe->p_proto);
if (s < 0)
{
//errexit("can't create socket:%s\n", strerror(errno));
printf("can't create socket:%s\n", strerror(errno));
return 0;
}
/* connect the socket */
if (connect (s,(struct sockaddr *)&sin,sizeof(sin)) < 0)
{
//errexit("can't connect to %s.%s: %s\n",host,service,strerror(errno));
printf("can't connect to %s.%s: %s\n",host,service,strerror(errno));
return 0;
}
return s;
}
int connectTCP(const char *host, const char *service)
/* arguments:
* host --- name of host to which connection is desired
* service --- service associated with the desired port
*/
{
return connectsock(host,service,"tcp");
}
/* errexit --- print an error mesage and exit */
/*VARARGS1*/
int errexit(const char *format,...)
{
va_list args;
va_start(args,format);
vfprintf(stderr,format,args);
va_end(args);
exit(1);
}
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I'm completely new to Unix, but familiar with Mac OSX. I've just discovered the command line terminal feature of this new OS and I'm trying to learn how to telnet into my host's server to change permissions to allow executable cgi scripts for my website. Is there anyone who might be able to... (2 Replies)
Discussion started by: tylerl
2 Replies
2. Programming
I have configured my firewall to allow only five remote IP's to connect to my server. Upon connection...i would like to automate the Xsession functions for authorized IP's.
Mainly, $DISPLAY of the environment to the client.
I understand that the "gethostbyaddr" function is capable of this.... (0 Replies)
Discussion started by: thomas.jones
0 Replies
3. Programming
Hello,
I'm new user in this forum, and i'm french ... so excuse me for my english :)
In fact, I've to manage several network equipments which can be only configured with the telnet protocol.
But using the standalone telnet tool, it's too long and hard. So I'd like to known if a Telnet... (0 Replies)
Discussion started by: aho
0 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I am using the telnet client on windowsNT to access the Unix system.
I want to find out the IP address of the telnet client from the server side.
The reason is I want to set the DISPLAY environment variable when the user is logged on.
Is there anyway that the the Unix server can... (1 Reply)
Discussion started by: vtran4270
1 Replies
5. UNIX for Dummies Questions & Answers
I have launched telnet on nt and have connected to a unix server,
I'm trying to run a program on the unix server which will launch a gui, but when I try to launch it
I get the message
"display not set\n"
"By default set it to 0.0"
I can sit down at the unix machine and launch the program with... (3 Replies)
Discussion started by: cbachman
3 Replies
6. Programming
i came acors this coding when surfin the net.this code works perfectly.but as i am new to this socket programming i need sm coments quoted on it or explanation regarding this source code.
i have prb understanding the server.c i have posted it below
can u guys help me !!!!
cheerZ
The... (4 Replies)
Discussion started by: mathu
4 Replies
7. Programming
hi guys,
I need the code for a server client registration form.The server must ask for authentication .Then the client would send in data. This is stored in a file .The server sends back a receipt to the client as part of the payment done.
plz can some 1 get me the code... (9 Replies)
Discussion started by: pip3r
9 Replies
8. Programming
can u help me? i need the program code in C to perform Simple File Transfer in linux.in this forum i found the server program,inw i need the client program ASAP.
Thanx. (1 Reply)
Discussion started by: harshi
1 Replies
9. UNIX for Advanced & Expert Users
hi,
what is the difference between logging into unix through f-secure ssh client and telnet
is there any more security check is involved
can any one explain
thanks in advance (1 Reply)
Discussion started by: trichyselva
1 Replies
10. Linux
Hello everyone. I have a script that telnets into a linux workstation and restarts a service, while logging the session to a file. I'm kind of new to linux so when I was using windows I would capture something like
windows cli: telnet xxx.xxx.xxx.xxx -f c:/capture.log
...
# /sbin/service... (3 Replies)
Discussion started by: Elyas_cr
3 Replies