Sponsored Content
Top Forums Programming Store file into a buffer to send it through a socket Post 302347323 by Corona688 on Tuesday 25th of August 2009 11:30:52 AM
Old 08-25-2009
You want to program at the kernel level and filter below the packet level but don't know how to open a file? You have ambitions. Smilie

Code:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(void)
{
  ssize_t bytes;
  char buf[512];
  int fd=open("path/to/file", O_RDONLY);
  if(fd < 0)
  {
    perror("Couldn't open file");
    return(1);
  }

  bytes=read(fd, buf, 512);
  if(bytes <= 0)
  {
    perror("Couldn't read");
    close(fd);
    return(2);
  }

  close(file);


  // You now have 'bytes' bytes of data read into the buffer 'buf'.

  // Do other stuff here

  return(0);
}

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

What is my UDP send/recieve buffer size

Hi, If some one was to suggest, "increase your kernal tunables related to UDP, in particular the UDP send/recieve buffer size".... then what would they mean? :confused: How can I find out what this current value is? Thousand many thanks. Neil (3 Replies)
Discussion started by: nhatch
3 Replies

2. Shell Programming and Scripting

send function in socket

Hi All, I encountered a stange problem while doing a perl script to use socket. i need to transfer a file from client to sever. but error came as argument missing in send function.........Plz tell me the wt r the arguments in send and recv functions....... (0 Replies)
Discussion started by: trupti_rinku
0 Replies

3. 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

4. UNIX for Advanced & Expert Users

connect problem for sctp socket (ipv6 socket) - Runtime fail Invalid Arguments

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

5. Programming

Send/Receive buffer size??

Dear friends, How do I find the TCP send and receive buffer size? (1 Reply)
Discussion started by: nagalenoj
1 Replies

6. Programming

Socket Programming Send File

Hello my friends; Look at this 2 program: Client: #include <stdlib.h> #include <stdio.h> #include <string.h> #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <arpa/inet.h> int main ( int agrc, char *argv ) { int Socket; struct sockaddr_in... (5 Replies)
Discussion started by: htabesh
5 Replies

7. Programming

Finding used socket receive-buffer size

I have set the receive buffer size of socket to max. setsockopt(sd,SOL_SOCKET, SO_RCVBUF,&max,optval); Am reading data from the socket in a loop(say max 100 bytes per recv) while(1) { int rlen=recv(sd,(void *)buf, 100 , 0); //err handle and processing } Assume my process is slow... (2 Replies)
Discussion started by: johnbach
2 Replies

8. 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

9. AIX

Sample C program to Send/Recieve a file using Socket

Hi All, I urgently need a Sample C program to Send/Recieve a file using Socket. Thanks Sara (1 Reply)
Discussion started by: saraperu
1 Replies

10. Programming

How to avoid 'No buffer space available' on C socket?

Hello everybody, Years ago i left in stand-by a project of mine where the main program was supposed to send thousands ARP frames over the socket as fast as it could; but because of a programming issue i couldn't continue it. 2 days ago I decided to solve that issue. The thing is, when the... (4 Replies)
Discussion started by: Zykl0n-B
4 Replies
SOCKET_SEND(3)								 1							    SOCKET_SEND(3)

socket_send - Sends data to a connected socket

SYNOPSIS
int socket_send (resource $socket, string $buf, int $len, int $flags) DESCRIPTION
The function socket_send(3) sends $len bytes to the socket $socket from $buf. PARAMETERS
o $socket - A valid socket resource created with socket_create(3) or socket_accept(3). o $buf - A buffer containing the data that will be sent to the remote host. o $len - The number of bytes that will be sent to the remote host from $buf. o $flags - The value of $flags can be any combination of the following flags, joined with the binary OR ( |) operator. Possible values for $flags +--------------+---------------------------------------------------+ | | | | MSG_OOB | | | | | | | Send OOB (out-of-band) data. | | | | | | | | MSG_EOR | | | | | | | Indicate a record mark. The sent data completes | | | the record. | | | | | | | | MSG_EOF | | | | | | | Close the sender side of the socket and include | | | an appropriate notification of this at the end of | | | the sent data. The sent data completes the trans- | | | action. | | | | | | | |MSG_DONTROUTE | | | | | | | Bypass routing, use direct interface. | | | | +--------------+---------------------------------------------------+ RETURN VALUES
socket_send(3) returns the number of bytes sent, or FALSE on error. SEE ALSO
socket_sendto(3). PHP Documentation Group SOCKET_SEND(3)
All times are GMT -4. The time now is 05:25 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy