Sponsored Content
Top Forums Programming Problems with file descriptor Post 70495 by teo on Friday 29th of April 2005 11:24:59 AM
Old 04-29-2005
Problems with file descriptor

Hi,
look at the following code:
The client after estabilishing a connection with the server does the following:
if ((peter = fopen(argv[1], "r")) == NULL){
printf("errore\n");
exit(0);
}

send_file(peter, sockfd); /* transfers the file to the server */
fclose(peter);
printf("File spedito\n");

read(sockfd, (char *) &res, sizeof(res)); /* here it waits for a receipt */
res = ntohs(res);
if(res == RECEIPT)
printf("RECEIPT received\n");
else
printf("RECEIPT not received\n");

close(sockfd);
}

The server after accepting the connection does the following:
if ((fp = fopen("transazione", "w")) == NULL){
printf("errore\n");
exit(0);
}
get_file(fp, connfd); /* obtain the file from the client */
fclose(fp);
printf("File received\n");

shutdown(connfd, SHUT_RD);
res = htons(RECEIPT);
writen(connfd, (char *) &res, sizeof(res));
printf("RECEIPT sent\n");
}
The whole program compile but when I try to execute it the client acrtually send the file and blocks on the read call on the socket and the server bloks on the get file function, never returning? Anyone can help?
By the way the two function get_file and send_file read from the socket and write to the file(get_file) or the opposite(read from the file e write to the socket, send_file)
Thanx in advance!!!
Matteo
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

file activity (open/closed) file descriptor info using KORN shell scripting

I am trying to find a way to check the current status of a file. Such as some cron job processes are dependent on the completion of others. if a file is currently being accessed / modified or simply open state I will wait until it is done being processed before attempting the next process on that... (3 Replies)
Discussion started by: Gary Dunn
3 Replies

2. UNIX for Dummies Questions & Answers

File Descriptor Help

What is a file descriptor in Unix?? How to find a file descriptor of a file in Unix?? Does it have anything to do with the Inode numbers?? (3 Replies)
Discussion started by: rahulrathod
3 Replies

3. Programming

File descriptor constant

I have a requirement to close all the file descriptors from 3 to 1024 for a particular application. Right now, this is how I do it .. for ( int i = 3 ; i <= 1024; ++i ) close(i); The change I am looking at is, I want to do away with the number 1024 and replace it with a constant which... (4 Replies)
Discussion started by: vino
4 Replies

4. UNIX for Advanced & Expert Users

File Descriptor Table

Im working on writing a small operating system. I am currently working on implementing dup, dup2, pipe, and close and I need to implement some type of file descriptor table in my PCB. I was wondering if there is anyone who is familiar with linux/unix implementation of these tables who could... (6 Replies)
Discussion started by: Ashaman0
6 Replies

5. Shell Programming and Scripting

File Descriptor

Hello All, Im opening a file desciptor in perl and sending data using print CMD "$xyz". is there a limit to the length of the string that I can give to this CMD at a time. (3 Replies)
Discussion started by: rimser9
3 Replies

6. UNIX for Dummies Questions & Answers

File Descriptor

Hi What the below path contains? /proc/<pid>/fd (1 Reply)
Discussion started by: siba.s.nayak
1 Replies

7. Shell Programming and Scripting

file descriptor KSH

Hello, How can i use file descriptor in a script to read 2 files at the same time and extract line 200 from file 1 and line 500 from file 2. Thanks. (6 Replies)
Discussion started by: LiorAmitai
6 Replies

8. Shell Programming and Scripting

Help with File Descriptor in a While loop

Hi, I am trying to read a file line-by-line in a while loop, and perform some tasks which involves non-interactive SSH to a remote server. The code looks something like this -- #!/usr/bin/ksh export myFile=/path/to/my/file.load while read line do do something ## Adding the SSH... (2 Replies)
Discussion started by: Subu1987
2 Replies

9. Shell Programming and Scripting

Variable File Descriptor

Greetings. I am happily using constructs like the following; I have set -x to show fine distinctions. $ exec 4> afile + exec + 4> afile $ print -u4 This is the first line in afileAs you can see from the -x expansion, the shell performed the exec command and redirected file descriptor to... (4 Replies)
Discussion started by: rpaskudniak
4 Replies

10. Shell Programming and Scripting

redirecting with file descriptor

hello, Someone can help me with redirectors? I am writing this script in bash enviroment on Fedora: exec 4<> /dev/tcp/10.10.11.30/5000 #open socket in input/output strings<&4 >file.txt & I send file descriptor 4 to string command to purge data stream from special char while come from... (3 Replies)
Discussion started by: rattoeur
3 Replies
CURLINFO_LOCAL_PORT(3)					     curl_easy_getinfo options					    CURLINFO_LOCAL_PORT(3)

NAME
CURLINFO_LOCAL_PORT - get the latest local port number SYNOPSIS
#include <curl/curl.h> CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_LOCAL_PORT, long *portp); DESCRIPTION
Pass a pointer to a long to receive the local port number of the most recent connection done with this curl handle. PROTOCOLS
All EXAMPLE
{ CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/"); res = curl_easy_perform(curl); if(CURLE_OK == res) { long port; res = curl_easy_getinfo(curl, CURLINFO_LOCAL_PORT, &port); if(CURLE_OK == res) { printf("We used local port: %ld ", port); } } curl_easy_cleanup(curl); } return 0; } AVAILABILITY
Added in 7.21.0 RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. SEE ALSO
curl_easy_getinfo(3), curl_easy_setopt(3), CURLINFO_PRIMARY_PORT(3), CURLINFO_LOCAL_IP(3), libcurl 7.54.0 March 16, 2017 CURLINFO_LOCAL_PORT(3)
All times are GMT -4. The time now is 12:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy