10-18-2011
I find you are correct. Spurious data for instance can cause a false ready notification. I've used select() more with terminals than I have with sockets, it seems I have more to learn.
10 More Discussions You Might Find Interesting
1. Programming
Excuse me . I'm a beginner . In windows , MFC can be used , but how to do in Unix ? And does unix support c++like VC++ ? How can I get developing tools in Unix ? (7 Replies)
Discussion started by: sanjohn
7 Replies
2. HP-UX
Our system is having a server and multiple clients. We are monitoring the client FDs using select() system call in HP-UX.
After establishing connection-using socket with the remote client, before start sending the data we are checking the status of socket using select( ) call. For first 16... (0 Replies)
Discussion started by: AshokG
0 Replies
3. UNIX for Advanced & Expert Users
Hello,
I need help to replace the ................. of client.c that request the server implemented by server.c
------------------
Listing 1 - server.c
/* Inclusion des différentes librairies nécessaires */
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
... (0 Replies)
Discussion started by: bounkolh
0 Replies
4. UNIX for Dummies Questions & Answers
Hi all,
I'm writing a kernel module and part of it involves controlling IPCs between processes. My problem is when a process tries to connect to a Unix domain socket, the only identifying information of the socket it supplies (that I can see, anyway) is the special pathname of the socket. From... (0 Replies)
Discussion started by: blank87
0 Replies
5. UNIX for Dummies Questions & Answers
Sorry if this is a stupid question!
I have been developing a Java application that I am deploying on both Unix and Linux servers, which uses lots of socket handling. When the server side connection is dropped by the server un-gracefully I have been seeing close_waits and null connections.
... (0 Replies)
Discussion started by: Vinnie
0 Replies
6. UNIX for Advanced & Expert Users
Hi,
I was porting ipv4 application to ipv6; i was done with TCP transports. Now i am facing problem with SCTp transport at runtime.
To test SCTP transport I am using following server and client socket programs. Server program runs fine, but client program fails giving Invalid Arguments for... (0 Replies)
Discussion started by: chandrutiptur
0 Replies
7. IP Networking
hi
I am strucked in a client server program
client need to login to server
client logins if only username and password are correct
i have written a program
username is stored as file and password is smilar to username whic is stored in that file
when server asks for username... (2 Replies)
Discussion started by: karthik1238
2 Replies
8. UNIX for Advanced & Expert Users
Write a C socket program on UNIX where a TCP client sends/reads a
time in decimal 24 hours format to the server and the server echoes the
seconds, minutes, and hours in the time.
Example: Client sends 18.78 hours and the server displays 18 hours, 46
minutes and 48 seconds. (1 Reply)
Discussion started by: adi_always4u143
1 Replies
9. Programming
Hi all,
my name is anjali, working as an intern, doing masters
i have an assignment from my school, which i am not able to solve,
can someone please help me in finding the solution for this problem
thanking you in advance....lol
Write a C socket program on UNIX where a TCP client... (1 Reply)
Discussion started by: anjali.symantec
1 Replies
10. IP Networking
I need clarification on whether it is okay to set socket options on a listening socket
simultaneously when it is being used in an accept() call?
Following is the scenario:-
-- Task 1 - is executing in a loop - polling a listen socket, lets call it 'fd', (whose file descriptor is global)... (2 Replies)
Discussion started by: jake24
2 Replies
LEARN ABOUT SUSE
log::log4perl::appender::socket
Appender::Socket(3) User Contributed Perl Documentation Appender::Socket(3)
NAME
Log::Log4perl::Appender::Socket - Log to a socket
SYNOPSIS
use Log::Log4perl::Appender::Socket;
my $appender = Log::Log4perl::Appender::Socket->new(
PeerAddr => "server.foo.com",
PeerPort => 1234,
);
$appender->log(message => "Log me
");
DESCRIPTION
This is a simple appender for writing to a socket. It relies on IO::Socket::INET and offers all parameters this module offers.
Upon destruction of the object, pending messages will be flushed and the socket will be closed.
If the appender cannot contact the server during the initialization phase (while running the constructor "new"), it will "die()".
If the appender fails to log a message because the socket's "send()" method fails (most likely because the server went down), it will try
to reconnect once. If it succeeds, the message will be sent. If the reconnect fails, a warning is sent to STDERR and the "log()" method
returns, discarding the message.
If the option "silent_recovery" is given to the constructor and set to a true value, the behaviour is different: If the socket connection
can't be established at initialization time, a single warning is issued. Every log attempt will then try to establish the connection and
discard the message silently if it fails. If you don't even want the warning, set the "no_warning" option to a true value.
Connecting at initialization time may not be the best option when running under Apache1 Apache2/prefork, because the parent process creates
the socket and the connections are shared among the forked children--all the children writing to the same socket could intermingle
messages. So instead of that, you can use "defer_connection" which will put off making the connection until the first log message is sent.
EXAMPLE
Write a server quickly using the IO::Socket::INET module:
use IO::Socket::INET;
my $sock = IO::Socket::INET->new(
Listen => 5,
LocalAddr => 'localhost',
LocalPort => 12345,
Proto => 'tcp');
while(my $client = $sock->accept()) {
print "Client connected
";
while(<$client>) {
print "$_
";
}
}
Start it and then run the following script as a client:
use Log::Log4perl qw(:easy);
my $conf = q{
log4perl.category = WARN, Socket
log4perl.appender.Socket = Log::Log4perl::Appender::Socket
log4perl.appender.Socket.PeerAddr = localhost
log4perl.appender.Socket.PeerPort = 12345
log4perl.appender.Socket.layout = SimpleLayout
};
Log::Log4perl->init($conf);
sleep(2);
for(1..10) {
ERROR("Quack!");
sleep(5);
}
COPYRIGHT AND LICENSE
Copyright 2002-2009 by Mike Schilli <m@perlmeister.com> and Kevin Goess <cpan@goess.org>.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.12.1 2010-02-07 Appender::Socket(3)