Search Results

Search found 33182 results on 1328 pages for 'linux port'.

Page 562/1328 | < Previous Page | 558 559 560 561 562 563 564 565 566 567 568 569  | Next Page >

  • packet mmap send packet format

    - by SeregASM
    I want to improve packet transmitting performance. Before that I used raw sockets and now I study packet_mmap. I have packets(frames) which I already captured from kernel module from another PC, put to current PC and now I want to retransmit them to local interface with following forwarding. I have got example of packet_mmap, integrated it to my project, but I send fd_socket = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); memset(&my_addr, 0, sizeof(struct sockaddr_ll)); my_addr.sll_family = PF_PACKET; my_addr.sll_protocol = htons(ETH_P_ALL); strcpy(str_devname, "eth0"); strncpy(s_ifr.ifr_name, str_devname, sizeof(s_ifr.ifr_name)); ec = ioctl(fd_socket, SIOCGIFINDEX, &s_ifr); i_ifindex = s_ifr.ifr_ifindex; memset(&my_addr, 0, sizeof(struct sockaddr_ll)); my_addr.sll_family = AF_PACKET; my_addr.sll_protocol = ETH_P_ALL; my_addr.sll_ifindex = i_ifindex; bind(fd_socket, (struct sockaddr *) &my_addr, sizeof(struct sockaddr_ll) s_packet_req.tp_block_size = c_buffer_sz; s_packet_req.tp_frame_size = c_buffer_sz; s_packet_req.tp_block_nr = c_buffer_nb; s_packet_req.tp_frame_nr = c_buffer_nb; size = s_packet_req.tp_block_size * s_packet_req.tp_block_nr; if (setsockopt(fd_socket, SOL_PACKET, PACKET_TX_RING, (char *) &s_packet_req, sizeof(s_packet_req)) < 0) { perror("setsockopt: PACKET_TX_RING"); return; } if (c_sndbuf_sz) { printf("send buff size = %d\n", c_sndbuf_sz); if (setsockopt(fd_socket, SOL_SOCKET, SO_SNDBUF, &c_sndbuf_sz, sizeof(c_sndbuf_sz)) < 0){ perror("getsockopt: SO_SNDBUF"); exit(1); } } data_offset = TPACKET_HDRLEN - sizeof(struct sockaddr_ll); printf("data offset = %d bytes\n", data_offset); ps_header_start = (tpacket_hdr *) mmap(0, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd_socket, 0); if (ps_header_start == (void*) -1) { perror("mmap"); exit(1); } Then I fill data ps_header = ((struct tpacket_hdr *) ((char *) ps_header_start + (c_buffer_sz * i_index))); if (!ps_header) { perror("ps_header") ; return NULL; } data = ((char*) ps_header) + data_offset; switch ((volatile uint32_t) ps_header->tp_status) { case TP_STATUS_AVAILABLE: printf("TP_STATUS_AVAILABLE, index=%d\n",i_index) ; memcpy(data, packet_data, size); pthread_mutex_lock(&index_locker) ; i_index++; pthread_mutex_unlock(&index_locker) ; if (i_index >= c_buffer_nb) { i_index = 0; first_loop = 0; } /* update packet len */ ps_header->tp_len = size; /* set header flag to USER (trigs xmit)*/ ps_header->tp_status = TP_STATUS_SEND_REQUEST; then I send ec_send = sendto(fd_socket, NULL, 0, 0, (struct sockaddr *) ps_sockaddr, sizeof(struct sockaddr_ll)); I have got no errors, ec_send=not null size of sended data. But there are no data routed to destination host. So, I ask - what data I should pass to ring buffer, now I include headers ip,tcp, should I include MAC header? - May be I have to set additional flags to route my packets.

    Read the article

  • Making a Ubuntu executable.

    - by sfactor
    i have made a program in C using the gcc compiler. Right now it has no GUI components. So, I am basically compiling it with makefile and running it in the terminal. I need to deploy it so that the executable is standalone. So, basically I want the executable to have an icon and when clicked start the program in the terminal. Can anyone tell me how to do this?

    Read the article

  • How to properly siglongjmp out of signal handler?

    - by EpsilonVector
    Suppose I have the following code: In order to implement a context switch I activate ualarm and when it jumps to the handler it setjmp's the current context, and longjmps to the next, expecting to eventually return to the alarm handler and longjmped back into this context (the contexts are cycled through in a Round Robin). For this I need to keep SIGALRM unblocked in between alarm_handlers. I came up with the following code, which doesn't seem to work. What's wrong with it and what is the right way to do this? void alarm_handler(){ if(sigsetjmp(toc->threads[toc->RR_pointer].env, 0)){ ualarm(200, 0); signal(SIGALRM, alarm_handler); return; } get_next_context_number(toc->RR_pointer); //is a macro for (j=0; j<10; j++) printf("ALARM HANDLER\n"); siglongjmp(toc->threads[toc->RR_pointer].env, 1); }

    Read the article

  • PHP set timeout for script, set_time_limit not working

    - by tehalive
    I have a command-line PHP script that runs a wget request using each member of an array with foreach. This wget request can sometimes take a long time so I want to be able to set a timeout for killing the script if it goes past 15 seconds for example. I have PHP safemode disabled and tried set_time_limit(15) early in the script, however it continues indefinitely. I've given up troubleshooting set_time_limit() and was trying to find other ways to kill the script after 15 seconds of execution. However, I'm not sure if it's possible to check the time a script has been running while it's in the middle of a wget request at the same time (a do while loop did not work). Thanks for any tips!

    Read the article

  • About fork system call and global variables

    - by lurks
    I have this program in C++ that forks two new processes: #include <pthread.h> #include <iostream> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h> #include <cstdlib> using namespace std; int shared; void func(){ extern int shared; for (int i=0; i<10;i++) shared++; cout<<"Process "<<getpid()<<", shared " <<shared<<", &shared " <<&shared<<endl; } int main(){ extern int shared; pid_t p1,p2; int status; shared=0; if ((p1=fork())==0) {func();exit(0);}; if ((p2=fork())==0) {func();exit(0);}; for(int i=0;i<10;i++) shared++; waitpid(p1,&status,0); waitpid(p2,&status,0);; cout<<"shared variable is: "<<shared<<endl; cout<<"Process "<<getpid()<<", shared " <<shared<<", &shared " <<&shared<<endl; } The two forked processes make an increment on the shared variables and the parent process does the same. As the variable belongs to the data segment of each process, the final value is 10 because the increment is independent. However, the memory address of the shared variables is the same, you can try compiling and watching the output of the program. How can that be explained ? I cannot understand that, I thought I knew how the fork() works, but this seems very odd.. I need an explanation on why the address is the same, although they are separate variables.

    Read the article

  • Listing time every second as a Bash script

    - by Caleb
    Hello all, first time here as I've finally started to learn programming. Anyway, I'm just trying to print the time in nanoseconds every second here, and I have this: #!/usr/bin/env bash while true; do date=(date +%N) ; echo $date ; sleep 1 ; done Now, that simply yields a string of date's, which isn't what I want. My learning has been rather messy, so I hope you'll excuse me for this if it's really simple. Also, I did manage to fine this, that worked on the prompt: while true ; do date +%N ; sleep 1 ; done But that obviously doesn't work as a script.

    Read the article

  • What are the permissions I need?

    - by Eric
    My folder at: /usr/local/www/.ext_env_vars has a bunch of files in it that my app needs to read. The user is 'webapp' So, I changed the perms like so: chmod -R 400 .ext_env_vars chown -R webapp.webapp .ext_env_vars The application can't read these. However, when I chmod 777, they are read by the app. So, it isn't that I have a path problem. Seems to be permissions only. So, what would I have to do to the permissions to make webapp be able to read those files in the .ext_env_vars folder? Thanks Eric

    Read the article

  • How to extract paragaph and selected lines with Perl

    - by neversaint
    I have a text that looks like this. What I want to do is to extract the whole paragraph under the section "Aceview summary" until the line that starts with "Please quote". extract the line that starts with "The closest human gene". And store them into array with two elements. However I am stuck with the following script logic. What's the right way to achieve that? #!/usr/bin/perl -w my $INFILE_file_name = $file; # input file name open ( INFILE, '<', $INFILE_file_name ) or croak "$0 : failed to open input file $INFILE_file_name : $!\n"; my @allsum; while ( <INFILE> ) { chomp; my $line = $_; my @temp1 = (); if ( $line =~ /^ AceView summary/ ) { print "$line\n"; push @temp1, $line; } elsif( $line =~ /Please quote/) { push @allsum, [@temp1]; @temp1 = (); } } close ( INFILE ); # close input file

    Read the article

  • rm -rf not erasing directory

    - by chief
    I am attempting to erase a directory called apps. When I run rm-rf apps it looks like it erases it for the moment. When I log back on to the server the directory is still there, though it is highlighted in green. drwxrwxrwx 3 user user 4096 2010-04-24 18:33 apps

    Read the article

  • Simulate Network Presence in dbus

    - by Evans
    Is there a way using Python to simulate the presence of an active network connection using dbus? If I call getstate() on the dbus, I'm able to get the current network state. I want to set the current state to 4 (Connection Present). This is because Network Manager is not able to connect using my modem and I use other tools to connect. Pidgin, Empathy and other software are not able to detect the network.

    Read the article

  • Heap Consistency Checking on Embedded System

    - by l.thee.a
    I get a crash like this: #0 0x2c58def0 in raise () from /lib/libpthread.so.0 #1 0x2d9b8958 in abort () from /lib/libc.so.0 #2 0x2d9b7e34 in __malloc_consolidate () from /lib/libc.so.0 #3 0x2d9b6dc8 in malloc () from /lib/libc.so.0 I guess it is a heap corruption issue. uclibc does not have mcheck/mprobe. Valgrind does not seem to MIPS support and my app (which is multi-threaded) depends on hw specific drivers. Any suggestions to check the consistency of the heap and to detect corruption?

    Read the article

  • shadow password

    - by LinuxGeek
    I'm trying to compare shadow password with php cli but not work ! i use this function so i can create password like shadow function shadow ($input){ for ($n = 0; $n < 9; $n++){ $s .= chr(rand(64,126)); } $seed = "$1$".$s."$"; $return = crypt($input,$seed); return $return; } when i replace the result in shadow it's work with the password but it's have different character how i can compare it . thanks

    Read the article

  • How to include clean target in makefile

    - by neversaint
    I have a makefile that looks like this CXX = g++ -O2 -Wall all: code1 code2 code1: code1.cc utilities.cc $(CXX) $^ -o $@ code2: code2.cc utilities.cc $(CXX) $^ -o $@ What I want to do next is to include 'clean target' so that every time I run 'make' it will automatically delete the existing binary files of code1 and code2 before creating the new ones. I tried to put these lines at the very end of the makefile, but it doesn't work clean: rm -f $@ echo Clean done What's the right way to do it?

    Read the article

  • archiving (ubuntu tar) hidden directories

    - by broiyan
    tar on a directory "mydir" will archive hidden files and hidden subdirectories, but tar from within "mydir" with a wildcard will not. Is this a longstanding and known inconsistency or bug or is it that hardly anybody ever looks inside a lengthy tar log long enough to notice? Edit (additional information): tar from within "mydir" with a wildcard will not "see" nor archive hidden files and hidden subdirectories in the immediate directory, with emphasis on "immediate". However, in subdirectories of "mydir" (obviously non-hidden) hidden files and hidden subdirectories will be archived.

    Read the article

  • setting mailx default smtp relay

    - by Arthur
    I heave searched Google for this and cannot seem to find a soloution I have bsd-mailx on my server and it sends mail just fine However I wished to have a development environment at home. I need mailx such that php can use its mail function. However the mail is failing to resolve the domain name @gmail.com I am aware that my ISP talk talk may be blocking this is they have a mail server smtp.talktalk.net I assume I would have to add somthing to /etc/mail.rc and use heirloom maEdit turned out I had a instance of send mail running that was doing weird things.. after killing ilx not bsd-mailx,,but would still need to set default smtp relay Im on ubuntu 12.4 thankyou Edit turned out I had a instance of send mail running that was doing weird things.. after killing that, I was able to add the smtp relay, but its now saying that the sender domain does not work. I assume this domain has to route back the the same machine the mail originated from. as i dont have a domain for my home address.

    Read the article

  • grep + add time out after some time if not find the relevant match

    - by yael
    Dear friends I use the following command syntax to search params in my script grep -qsRw -m1 "any_param" /dir/..../ Some times the search take avery long time The question is how to add time out to grep command For example after 20 seconds grep will break out If it not illegal to add time out to grep , how it will possible on other way? THX Yael

    Read the article

  • Stop Search param in directories by grep immediately after param match

    - by yael
    hi friends I use the following command to find under /var some param in my script grep -R "param" /var/* 2/dev/null |grep -wq "param" my problem is that: after grep find the param in file grep continue to search until all searches under /var/* will completed How to perform stop immediately after grep match the param word For example when I run the: grep -R "param" /var/* 2/dev/null |grep -wq "param" grep find the param after one second. But grep continue to sears other same param and its take almost 30 seconds How to stop the grep immediately after param match? THX

    Read the article

  • Unidentifiable Vim Keymap

    - by asdf.qwer
    Hi I'm trying to get rid of a pesky keymapping in vim, namely \c The mapping is only loaded for latex files, so it should be related to the latex-suite. It's annoying, because it can't type \cite without this keymap ruining everything. I can unmap it "manually" by typing: :unmap! \c But this doesn't work when I put that into my ~/.vimrc file because it says there's no such keymap. I think this is because the keymap is loaded after .vimrc, although I'm not sure. I've tried locate in bash to locate all files on my system that start have "vim" in their filename, and subsequently grep keyword $filename to find all references to keyword that should be relevant. The keyword I search for is "Traditional" because that's what the mapping is called (that's what I find by typing :map! in vim normal mode). It finds some entries that contain "Traditional" but nothing that corresponds to \c, except in the file: ~/.gnome2/gvim-sA9LOO-session.vim But this file is not used by vim when starting up, as far as I know. Anyone know any fix?

    Read the article

  • How to read directory using jQuery .ajax()?

    - by C.W.Holeman II
    Using jQuery .ajax() to read "./ex.html" returns the expected contents of the file. Using the same call just changing the request to "./" does not return an expected directory listing. <html> <head> </head> <body> <script type="text/JavaScript" src="jquery.js"></script> <script type="text/JavaScript"> alert($.ajax({type: "GET", url: './ex.html', async: false}).responseText); alert($.ajax({type: "GET", url: './', async: false}).responseText); </script> </body> </html>

    Read the article

  • How can I find the places of system calls of my program?

    - by Lucky Man
    From strace manual: -i Print the instruction pointer at the time of the system call. I straced my programm: strace -i prog As a result I got a lot of system calls. One of them: [000da49c] open("./rabbit.o", O_RDONLY) = 3 But disassembled instruction at this address of prog doesn't call any syscall (hte editor): da49c ! mov r7, ip What is wrong? How can I find the places of system calls of my program? P.S. Architecture of my device doesn't support GDB-command catch syscall.

    Read the article

< Previous Page | 558 559 560 561 562 563 564 565 566 567 568 569  | Next Page >