Thanks corona 4 ur suggestions. I am little bit confused abt thread creation.
For ur reference I am pasting my daemon template code. Pls embed the new code to establish a TCP connection to vendor server so that I can simulate the same.
Sorry to bother abt my code.
Code:
#define _REENTRANT
----- HEADER FILES -----------
/* the TCP port that I will be listening for my clients*/
#define TCP_PORT 6500
void *process_clnt(void *);
main()
{
int sockfd, newsockfd, clilen;
struct sockaddr_in cli_addr, serv_addr;
thread_t chld_thr;
if((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
fprintf(stderr,"my_daemon: can't open stream socket\n"), exit(0);
memset((char *) &serv_addr, 0, sizeof(serv_addr));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = htonl(INADDR_ANY);
serv_addr.sin_port = htons(TCP_PORT);
if(bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0)
fprintf(stderr,"server: can't bind local address\n"), exit(0);
thr_setconcurrency(5);
listen(sockfd, NULL);
for(;;){
clilen = sizeof(cli_addr);
newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &clilen);
if(newsockfd < 0)
fprintf(stderr,"server: accept error\n"), exit(0);
/* create a new thread to process the incomming client request */
thr_create(NULL, 0, process_clnt, (void *) newsockfd, THR_DETACHED, &chld_thr);
}
return(0);
}
void *process_clnt(void *arg)
{
int mysocfd = (int) arg;
char data[100];
/* read from the given socket */
read(mysocfd, data, data_size);
/* DO SOME PROCESSING */
/* This is the place I want to have a TCP connection to vendor server to get the result */
----------------------
----------------------
write(mysockfd,result,result_size); /* send back result to my client */
close(mysocfd);
thr_exit((void *)0);
}
Last edited by blowtorch; 10-05-2006 at 02:53 PM..
Reason: add code tags
Hi,
I have been trying to create a sharef object on my HP UX 11 machine
(HP-UX <myhostname> B.11.00 A 9000/879 ...... two-user license)
to create the shared object first I am creating the object file using
cc -Aa -c +z dyn.c
(I use -Aa and +z as per HP's manual on linkers ) to create the... (0 Replies)
Hi All,
I created the share object file using
gcc -shared -fpic mypp.cpp -o myp.so
but, pls tell me how to link this .so file to my client program.
Thanks (0 Replies)
Hi,
When using shared objects on AIX 4.3 i am getting runtime problems.
I have a small sample program which links to a shared object libray, oracle and system related libraries.
At runtime it fails (gives segmentation fault and coredump ) in one proc file when executing login statement.
But... (0 Replies)
Hi All,
I have a problem with the shared objects setup in AIX. We have a customized shell written by the developers over here. When i issue a MQ Series command (mqsilist) it is giving the error as . All the commands making use of this libImbCmdLib.a.so is failing. But when executed in normal... (1 Reply)
Hi,
I have created a shared object (abc.so) which has a function sum(int a, int b).
Is there any way to load the "abc.so" and use the sum function using shell script..
thanks in advance (2 Replies)
Hi all,
I am developing an application with two components. One "c" binary and one "C++" shared object.
While execution, the shared object crashes out and core dump is created whenever "new" is executed. But if i use malloc this will work perfectly.
I tried to use dbx. Below given was... (1 Reply)
Hello,
While running a c++ shared object on AIX I am facing below error -
rtld: 0712-001 Symbol __ct__3ETDFv was referenced
from module /bancs/aml/lib/libmonitor.so(), but a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol etd_insert__3ETDFv was... (3 Replies)
Hi,
I would like to create a shared object ( .so).
This shared object
1. uses the functions from a library.
2. Also it should be able to use the global variable in an app
To achieve this what should I do ? 1) To use the functions in the library should I give the -ld option while... (1 Reply)
Hello,
I am new to programming shared objects and I was hoping someone could tell me if what I want to do is possible, or else lead me in the right direction.
I have a main program that contains an abstract base class. I also have a subclass that I'm compiling as a shared object. The subclass... (13 Replies)
Hello,
I am not that experienced with Linux, and I am currently facing some issues.
The application I'm working on uses hundreds of threads. To optimize the memory usage, I am putting all my data inside a shared object (so).
The steps for this are as follows:
1. a C file (generated... (17 Replies)
Discussion started by: Maelstrom
17 Replies
LEARN ABOUT OPENSOLARIS
smbd
smbd(1M) System Administration Commands smbd(1M)NAME
smbd - CIFS server daemon
SYNOPSIS
/usr/lib/smbsrv/smbd
DESCRIPTION
The smbd daemon handles CIFS/SMB requests from CIFS clients, such as Windows clients. Only processes with {PRIV_SYS_SMB} and sufficient
privileges to write the /var/run directory can run this daemon.
The smbd daemon is automatically invoked by using the sharemgr command over all available transports. By default, smbd starts over the Net-
BIOS-Over-TCP (NBT) and TCP transports.
When smbd is started over NBT, the following services are started:
o The NetBIOS name service is started on UDP port 137.
o The NetBIOS datagram service is started on UDP port 138.
o The NetBIOS session service is started on TCP port 139.
When the smbd daemon is started over TCP, the CIFS service is started on TCP port 445.
Only one instance of smbd may be running at a time.
EXIT STATUS
The following exit values are returned:
0 Daemon exited cleanly.
95 Daemon exited with a fatal error.
96 Daemon exited with a configuration error.
ATTRIBUTES
See the attributes(5) man page for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWsmbsu |
+-----------------------------+-----------------------------+
|Interface Stability |Uncommitted |
+-----------------------------+-----------------------------+
SEE ALSO ps(1), svcs(1), sharectl(1M), sharemgr(1M), smbadm(1M), smbstat(1M), svcadm(1M), smb(4), smbautohome(4), system(4), attributes(5), smf(5)NOTES
Use the svcadm command to perform administrative actions on the smbd service, such as enabling, disabling, or restarting the service. Use
the svcs command to query the service status.
The smbd service is managed by the service management facility under the service identifier svc:/network/smb/server.
If the smbd service is disabled, it will be enabled by the sharemgr(1M) command, unless its auto_enable property is set to false.
SunOS 5.11 5 Feb 2008 smbd(1M)