C/C++ :: Implementing Program That Sends And Receives Raw Ethernet Frames
Apr 15, 2013
I am fairly new to the topic of the ethernet and the data link layer and I am trying to write a C program which allows the sending and receiving of ethernet frames.
I am trying to have my program send the ethernet frame to myself, so the program will have the same source and destination mac addresses.
The program that I'm using is a modified version of the code from [URL] ....
I keep having trouble with the recvfrom() function, it seems to just be blocking and the program doesn't terminate. From the code, I am trying send the ethernet frame and have the recvfrom() function be able to retrieve the frame and store it in a buffer. But because recvfrom() function is just blocking, it seems to me that the sendto() function was not able to successfully send the frame.
Here is my code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h> /* Must precede if*.h */
#include <linux/if.h>
#include <linux/if_ether.h>
[Code] ....
This is on a linux machine ....
View 2 Replies
ADVERTISEMENT
Jun 2, 2013
I have a procedure that prints the fields of ethernet frames and ip headers. I have an issue with the src mac addr being printed incorrectly and incompletely. The part in red is the trouble code.
Code:
1#include "sniffer.h"
2
3void print_headers(struct ethhdr * ethhdr, struct ip * iphdr){
4
5 char ipstr_src[INET_ADDRSTRLEN];
6 char ipstr_dst[INET_ADDRSTRLEN];
7 char macstr_dst[ETH_ALEN], macstr_src[ETH_ALEN];
[Code] ....
View 2 Replies
View Related
Jan 21, 2015
So I need to make a program that recieves a 10 letter only password, then once the password is entered, it starts off as AAAAAAAAAA...AAAAAAAAAB...AAAAAAAAAC...etc, Until it gets the correct password, which it then stops. This is for a science fair project on cyber security not for malicious purposes ...
View 2 Replies
View Related
Dec 28, 2013
Constructing this right aligned half pyramid? The code I had so far is right aligned and they're not in numbers
Write a program that receives one positive integer and display
_________ _ 1
________ 4 2
_______9 6 3
___16 12 8 4
25 20 15 10 5
when the user key in 5.PS: ignore the line
View 3 Replies
View Related
Apr 28, 2014
I want to write a little c++ program that sends a request to a server an get some data. I found the C++ Rest-SDK and decided to use it. I searched on different websites for code-examples but many of them doesn't work an shows syntax errors. What i got now is that code but the client.request method is skipped. The program never jumps in.
#include <Windows.h>
#include <iostream>
#include <sstream>
#include <string>
#include "cpprest/containerstream.h"
#include "cpprest/filestream.h"
[Code] .....
View 1 Replies
View Related
Jul 17, 2014
I am receiving packets of data from an ethernet cable. This is the line of code that is streaming in data from the ethernet cable:
size_t num_rx_samps = rx_stream->recv(&buff.front(), buff.size(), md, 3.0, enable_size_map);
and here is my attempt to push it onto a vector:
std::vector<size_t> processing_queue; //HERE IS WHERE I'M TRYING TO PUSH THE PACKETS ONTO A VECTOR
processing_queue.push_back(num_rx_samps);
I previously had my program saving to a .dat file (the commented out lines), but I'm trying to change it to pushing values onto a vector so I can stream the data packets from the ethernet cable to be processed. However, I'm having issues with pushing the data packets onto the vector?
The following is the code:
#include <uhd/types/tune_request.hpp>
#include <uhd/utils/thread_priority.hpp>
#include <uhd/utils/safe_main.hpp>
[Code].....
View 1 Replies
View Related
Dec 12, 2012
#include <cstdio>
#include <cstdlib>
int main () {
int i;
printf ("Checking if processor is available...");
if (system(NULL)) puts ("Ok");
[Code] ....
is the syntax correct for system? i am getting error " error: perl was not declared in this scope"
View 2 Replies
View Related
Jan 19, 2015
I tried to initialize the frames variable but when I go to debug it, it just gives me 30 errors compared to the one error when I don't initialize the frames variable.
#include "Gfx.h" // general gfx lib I made for SDL
#include "Input.h"
#include "General.h"
#include "Sprite.h"
#define screenw 620
#define screenh 480
/** CHARS ARE DONE */
//int mousex; int mousey; int mouseon = 0;
//int red = 0; int green = 0; int blue = 0;
[Code] ....
View 4 Replies
View Related
May 4, 2015
I have code (found long time ago, ~2001) to make videos from OpenGL rendering in my view class. In my OnDraw() function I call the function SaveAsAvi(). This works as intended until I have 255 frames in the movie I am trying to make. After that, Windows Media Player claims it cannot play the file. VirtualDub claims the avi contains Palette Changes and shows the correct number of frames (>255) but all frames past 255 are the same and equal to the last frame.
Memory overflow? Need to free m_pixels sometime somewhere?
Code:
void C***View::SaveAsAvi() {
C***Doc* pDoc = GetDocument();
if (pDoc->m_avi_status == -1)// initialize AVI stuff {
KillTimer(1);
// allocate space for the pixel info
[Code] ....
View 1 Replies
View Related
Nov 19, 2013
I have a code which is a set of rgb frames to be displayed at 25 fps to make it look like a video. While I createWindow invalidate and update it based on a timer, the video plays fine, but the buttons of Play, Pause etc hangs during the time video is playing.?
View 11 Replies
View Related
Mar 21, 2013
write mpi-c program for implementing graph coloring?(mpi-message passing interface used for parallel programming)
View 2 Replies
View Related
Oct 29, 2014
lets start with the code:
while(run)
{
if (PeekMessage(&msg, win->win_handle,0,0,PM_REMOVE))
{
[Code]......
I have created a basic window and i discovered that while resizing or moving my windows, the myframe() don't get any calls at all.
Is there anyway possible that myframe gets at least someof the calls while those things are happening
View 1 Replies
View Related
Feb 27, 2014
I have a problem with this work. It is that when the server send some data to the client it send them correctly but when they arrive to the client all the info are changed and i don't know why, because i print them before the send and they are right, but after they arrive to the client the data doesn't be the same.
here it is the server and client's code. In the code there are some italian words, but there are only constant, so there is a real problem to understand the code.
Server
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <stdbool.h>
#define FLUSH while(getchar()!='
[code]....
the problem is in the line 136 of the server and on the line 203 of the client
View 7 Replies
View Related
Feb 19, 2013
There is one question :
Considerint A[10]={ ....................}; // already filled
int B[10]={ ....................}; // already filled
Using PIONTER NOTATION ONLY, write a function that receives two arrays of integers like A and B above. The function should swap the values in A and B. You may NOT use array notation [ ]. Also, you have to use pointers to move among array cells. Note: Both arrays are of the same size, and size should be variable in the function.
View 3 Replies
View Related
Apr 2, 2014
How to write a function that receives an integer array along with its length. the function calculates and returns the sum of the squares of all the odd numbers in the array?
View 2 Replies
View Related
Dec 17, 2014
I'm trying to implement a T9 (predective text) project in c++ using k-ary Tree.
I would like to understand how can I add the words in the Tree and how can I display them later.
inside each node of the tree I have a linked list (for the words) and a vector of pointers to access the next node
Here are my structs :
struct NodeList{
string data;
NodeList * next;
};
struct List{
NodeList *head;
[code].....
View 1 Replies
View Related
Mar 1, 2014
Today I am refining my skills on graph theory and data structures. I decided to do a small project in C++ because it's been a while since I've worked in C++. I want to make an adjacency list for a directed graph. In other words, something which looks like: 0-->1-->3 1-->2 2-->4 3--> 4-->This would be a directed graph with V0 (vertex 0) having an edge to V1 and V3, V1 having an edge to V2, and V2 having an edge to V4, like this:
V0----->V1---->V2---->V4
|
|
v
V3
I know that in order to do this, I will need to create an adjacency list in C++. An adjacency list is basically an array of linked lists. Okay, let's see some pseudo C++ code:
Code:
#include <stdio>
#include <iostream>
using namespace std;
struct graph{
[Code] ....
This pseudocode is currently far from the mark. And that is what -- pointers and structs in C++ have never been my strong suit. First of all, this takes care of the vertices that a vertex points to -- but what about the vertex itself? How can I keep track of that vertex? When I loop over the array, it will do me no good to only know what vertices are being pointed to, rather than also knowing what points to them. The first element in each list should probably be that vertex, and then the elements after that are the vertices it points to.
But then, how can I access this first element of the list in my main program?. I would like to be able to loop over this adjacency list to do some cool things with graphs. For example, to implement some graph theory algorithms (sorts, shortest paths, etc) using the adjacency list representation. (Also, I had a question about the adjacency list. What is different than just using a list of arrays? Why can't I just have a list with an array at each element in the list?)
View 2 Replies
View Related
Jul 6, 2014
I am an experience C programmer but never implement GUI.
I need to make a demo implementation that will be run on Linux and will implement GUI.
I searched the WEB and found lot of information, among is implementing the GUI in HTML and run the API through web browser.
How can I make such implementation in C?
View 2 Replies
View Related
Mar 19, 2013
Implement ksmall as a C++ function. Use the first item of the array as the pivot. This is what I have so far, but everytime I compile it crashes ....
#include <cstdlib>
#include <iostream>
using namespace std;
int kSmall(int k, int anArray[], int first, int last);
[Code] ....
View 4 Replies
View Related
Feb 24, 2013
i want to implement dfa that accepts the binary string with at least two 0's after every 1 .....
View 3 Replies
View Related
Dec 5, 2013
The following program is designed to demonstrate class templates. The program will evaluate postfix expressions input to the console by pushing them in a stack, and then popping them and evaluating them as such, (ex. entering 3 4 + would equal 3+4 = 7).
The code is below. We are not to modify it, but to fill in the blanks, the places filled in indicated with two asterisks for a line, and one on each side for a part of a line. If I didn't know what to enter (if anything), I put three ?s. If you want to copy and compile for yourself, look for all the *s and ?s.
1) I'm turning up all sorts of errors in the main program file (prog5.cpp) having to do with stacktype.cpp. It has been removed from the program, as it is included at the end of stackType.h. Most of them are "cannot convert 'this' pointer from StackType to StackType<stack> &'. How do I fix that?
2) The program supposedly lacks a default constructor, and it keeps turning up that 's' is an array of unknown size (do I call StackType or stack or what?).
stackType.h Code: #pragma once// Catherine Stringfellow and Trey Brumley
// A Stack is a data type, which stores values in an order where values are added to the top of the stack when pushed,
// and when popped, remove and return the value from the top of the stack.
// Class specification for Stack ADT in file StackType.h
using namespace std;
static const int MAXITEMS = 50;
[code].....
View 11 Replies
View Related
Jan 2, 2015
I am creating a special struct with unknown functions. I use this approach:
Callbacks.h Code: #ifndef CALLBACKS
#define CALLBACKS
struct Callbacks;
struct Callbacks* getNewCallback();
[Code]....
When I ran it only the calls from doers array is called 7 times normally, and donters only one time. Why is that? When I call doers from the second loop, it prints the doers functions again....and only one call to donters is made to the first static inline donter functions __dont1()...
View 7 Replies
View Related
Jun 14, 2014
So i'm trying to implement the selection sort algorithm and it seems that the code is fine but...
Code:
#include <cs50.h>
#include "helpers.h"
void
sort(int values[], int n) {
// TODO: implement an O(n^2) sort
[Code] ....
I keep getting these errors and i don't understand why:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: ld returned 1 exit status
View 3 Replies
View Related
Apr 30, 2013
implementing an algebra function.(a+b)(a-b).does c++ support this sort of function.Did a quick search on google and all of them suggested using libraries like boost. is there anyway to do this without a library?
View 3 Replies
View Related
Mar 7, 2014
So I've been working on implementing a stack data structure as an ADT, the program compiles, but when I try and push elements on top of the stack, for some reason the stack is full.
#ifndef H_stackADT
#define H_stackADT
template <class Type>
class stackADT {
public:
virtual void initializeStack() = 0;
virtual bool isEmptyStack() const = 0;
[Code]...
View 4 Replies
View Related
Sep 10, 2014
I'm making a 2D Terraria-like (side-scrolling RPG with destroyable blocks) game with SFML 2.1, and I have no clue how to correctly implement collision detection. Meaning that I have been successful at making it work, but it's not clean and definitely not dynamic.
By example, I mean design wise. What parameters should collision functions take? Where should these functions be located? The same 2 questions for collision reaction. Since I have multiple things that need to collide with each other (player with enemy, player with items, enemy with items, enemy with enemy, player with player, etc...), and the world has to be treated differently, things get complicated. There is no block class, just a vertex array, so collision with the world is based purely on coordinates taken from that array in the world class, which, considering it's the world and not something like a player or an enemy, doesn't inherit from the same base class that they do.
View 7 Replies
View Related