C Socket Client/Server Fork Loop


 
Thread Tools Search this Thread
Top Forums Programming C Socket Client/Server Fork Loop
# 1  
Old 01-22-2011
C Socket Client/Server Fork Loop

Hello people.

I'm trying to do something like a search engine.
Server runs in the background by using ./server & which has data from a textfile stored in an array.
Client then runs by using ./client
It will then prompt "Search for:"

For example, if I searched for Products called Instant Noodles
Server will return me result:
Product : Instant Noodle
Price : $10
If there's no such product, it will return "No such product"

I've already done it up to here.
Problem is, I want to make the client loop, after it finishes searching for a product, "Search for:" will appear again. The socket connection will only end when the user types in "end"
I can make it end by typing "end", but not the loop for search.
How can I do this?
I'm currently using the fork() command to handle multiple clients.

Thanks in advance.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Socket dual client/server Linux

I'm trying to make a "dual/server client" (ipv4,ipv6) with sockets in linux but i don't know how to join both codes. I have a dual client ipv4 and ipv6, but i have problems with the server if you notice the only difference between them it's the AF_INET (pf_inet ipv4, and if_inet6 ipv6) and the port... (3 Replies)
Discussion started by: godna
3 Replies

2. Programming

C++ socket, fork & pipes

Hello, I'm stuck and this is a matter which I need to resolve quite fast (but I couldn't post in the "Emergency" section); the problem is this : I have created a chat program in which the client sends the sentence to the server and then the server should send it to all the clients connected,... (2 Replies)
Discussion started by: timmyyyyy
2 Replies

3. Programming

socket programing in client server

hei, i want to enter name and read it by client server socket program after checking name validity put the password and check.if ok than server clirnt say correct other wise incorrect. below my code: char name; printf ("Welcome to the server \n"); printf ("Enter user name: \n"); scanf... (1 Reply)
Discussion started by: saiful_911
1 Replies

4. Programming

how can I send and receive data in client server socket programing

char name; printf ("Welcome to the server \n"); printf ("Enter user name: \n"); scanf ("%c", &name); how can client send name to server:what should be the code? int send ( int sid , const char ∗buffer Ptr , int len , int f l a g ) how can client receive ack from... (1 Reply)
Discussion started by: saiful_911
1 Replies

5. Programming

Client socket

Am trying to connect to local machine on port 9102 There is no server application listening on port 9102. if (connect(fd,(struct sockaddr *)&addr, (socklen_t)sizeof(struct sockaddr)) == -1) return -1; cout<<"Connected ,ERRNO:"<<errno<<", txt:"<<strerror(errno); netstat -na |grep... (5 Replies)
Discussion started by: johnbach
5 Replies

6. Programming

Client/Server Socket Application - Preventing Client from quitting on server crash

Problem - Linux Client/Server Socket Application: Preventing Client from quitting on server crash Hi, I am writing a Linux socket Server and Client using TCP protocol on Ubuntu 9.04 x64. I am having problem trying to implement a scenario where the client should keep running even when the... (2 Replies)
Discussion started by: varun.nagpaal
2 Replies

7. UNIX for Dummies Questions & Answers

socket programming : client server IPC

I'm new to socket programming. Have a basic doubt. I have a structure(global) at the server side. I have two different client connecting to the server. Will the changes made by one client on the structure be visible to the other client when it accesses the same client? I'm creating a STREAM... (3 Replies)
Discussion started by: abc.working
3 Replies

8. Programming

UDP socket - can both client and server recv and send

Hi, Am very new to socket programming. When we use UDP sockets to communicate between two processess, will both the client/server socket be able to send/recv ? meaning can sendto()/ recvfrom() be used on both server and client? It could be useful even if anybody provide some link on socket... (1 Reply)
Discussion started by: rvan
1 Replies

9. Programming

client socket read returns 0 bytes

Hi I have apeculiar problem with sockets. I have a shared object for my client program. when I send a request to the server, it is suppose to process and sends back the result string to the client. For the first request, it is working fine i.e. client sends the req. and gets the... (1 Reply)
Discussion started by: axes
1 Replies

10. UNIX for Dummies Questions & Answers

client app not letting go of socket

Ok here's the situation We have an application that our users log into over the network to one of our unix boxes (Solaris 8). I had this situation occur the other day where an user claimed that he totally shutdown the app because it froze up and wasn't able to log back in. I performed a... (1 Reply)
Discussion started by: fusion99
1 Replies
Login or Register to Ask a Question
Net::Server::Fork(3)					User Contributed Perl Documentation				      Net::Server::Fork(3)

NAME
Net::Server::Fork - Net::Server personality SYNOPSIS
use Net::Server::Fork; @ISA = qw(Net::Server::Fork); sub process_request { #...code... } __PACKAGE__->run(); DESCRIPTION
Please read the pod on Net::Server first. This module is a personality, or extension, or sub class, of the Net::Server module. This personality binds to one or more ports and then waits for a client connection. When a connection is received, the server forks a child. The child handles the request and then closes. With the exception of parent/child signaling, this module will work (with basic functionality) on Win32 systems. ARGUMENTS
check_for_dead Number of seconds to wait before looking for dead children. This only takes place if the maximum number of child processes (max_servers) has been reached. Default is 60 seconds. max_servers The maximum number of children to fork. The server will not accept connections until there are free children. Default is 256 children. max_dequeue The maximum number of dequeue processes to start. If a value of zero or undef is given, no dequeue processes will be started. The number of running dequeue processes will be checked by the check_for_dead variable. check_for_dequeue Seconds to wait before forking off a dequeue process. It is intended to use the dequeue process to take care of items such as mail queues. If a value of undef is given, no dequeue processes will be started. CONFIGURATION FILE
See Net::Server. PROCESS FLOW
Process flow follows Net::Server until the post_accept phase. At this point a child is forked. The parent is immediately able to wait for another request. The child handles the request and then exits. HOOKS
The Fork server has the following hooks in addition to the hooks provided by the Net::Server base class. See Net::Server "$self->pre_accept_hook()" This hook occurs just before the accept is called. "$self->pre_fork_hook()" This hook occurs just after accept but before the fork. "$self->post_accept_hook()" This hook occurs in the child after the accept and fork. "$self->run_dequeue()" This hook only gets called in conjuction with the check_for_dequeue setting. TO DO
See Net::Server AUTHOR
Paul Seamons <paul@seamons.com> Rob Brown <bbb@cpan.org> SEE ALSO
Please see also Net::Server::INET, Net::Server::PreFork, Net::Server::MultiType, Net::Server::SIG Net::Server::Single perl v5.12.1 2007-02-03 Net::Server::Fork(3)