1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Can someone compile this for WRT54G? (source code incl.)

Discussion in 'Cisco/Linksys Wireless Routers' started by BugCrush3r, Jun 6, 2005.

  1. BugCrush3r

    BugCrush3r Network Guru Member

    Hi everyone, can someone please compile this for the WRT54G. It's a DDNS client from no-ip which provides a free dynamic DNS service that is very stable. Thanks so much, here is the to the x86 source code that needs to be crossed linked to MIPS.

    Again thanks to whoever can help me out.

    http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
     
  2. hedpe

    hedpe Network Guru Member

  3. BugCrush3r

    BugCrush3r Network Guru Member

    hey thanks very much , I am having trouble with this. I can configure it on the router but when I go to start it it says it is already running but I cannot see it in the process list. On my linux box I believe the default user that this is started as is 'nobody' which doesn't exist on the router.

    How can a process be running and I can't see it to kill it? This process will have to be started in root as its the only user setup on the router. My coding skills are pretty limited, Would it be too much for you to change the source so that it starts up in root and recompile please.

    Thanks so much for the fast reply

    I think this is what needs to be modified but I dont have the skillz.
     
  4. davidsonf

    davidsonf Network Guru Member

    This last bit of code is what deals with the user. It checks to see if this is being run as root, and if it is it checks to see if there is a user "nobody". If there is, it becomes "nobody" and goes on. But if it isn't root or if there is no user nobody,
    it goes on without any hesitation.

    Hence, whatever the problem is, that part isn't it.

    I'll download your original tar file and see if there's anything obvious. No guarantees, because I will try to compile it but probably won't attempt to run it.
     
  5. BugCrush3r

    BugCrush3r Network Guru Member

    thankyou so much, I really need this to work.

    History,

    so far I can start the process noip -C to configure the startup script, everything is fine. It detects my account on no-ip and exits without error.

    When I try to start the program it says the following,

    "/usr/local/etc#One noip2 process is already active,
    and the multiple instance flag (-M) is not set."

    When I do a 'ps fax' it doenst show any instance of the noip2 process.
     
  6. BugCrush3r

    BugCrush3r Network Guru Member

    davidsonf out of curiosity, have you had a chance to look at it ?
     
  7. davidsonf

    davidsonf Network Guru Member

    Well, near as I can tell... what it is telling you is true! It uses a shared memory semaphore to determine how many instances of the program are running. A quick test program indicates the code they used works flawlessly! The only time it told me there were multiple instances was when there were in fact multiple instances.

    The thing is though, this method does not rely on the *name* of the process. It doesn't care what the name is. It looks at a bit of shared memory and gets a count of how many processes are currently attached to that shared memory segment. The only way to attach to it is to use the particular "key" used by the noip2 program.

    So, by one name or another, you have something running that is attaching to the the shared memory segment used by this noip2 program.

    Instead of "ps fax", try looking for it with, "ps ax | grep [n]oip" and see if that shows anything.

    Otherwise, I'm not sure just how this particular program works or what it does, so I can't say what other program there might be that also use the same key to shared memory.
     
  8. BugCrush3r

    BugCrush3r Network Guru Member

    Assuming you meant 'ps ax | grep [n]oip2' I tried this command a few times and it returns the following.

    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8490 root 184 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8492 root 368 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8494 root 144 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8496 root 204 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8498 root 344 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8500 root 344 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8502 root 340 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8504 root 344 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8506 root 344 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8508 root 144 R grep noip2
    D0THOME20:/usr/local/bin#ps ax | grep [n]oip2
    8510 root 368 R grep noip2
    D0THOME20:/usr/local/bin#

    Thanks for your help , if you have anymore ideas, I can try to help.

    whats wierd is I deleted the binary and the config file, rebooted the router, than wget'd the file back , when I tried running the progam for the first time it said the same thing that there was another process by the same name running.
     
  9. davidsonf

    davidsonf Network Guru Member

    Ooops. A major problem with that statement!

    I was testing that on a regular Linux box, and it occurs to me that a WRT54G is not necessarily the same, so I'd better just test it there too. It doesn't work! Instead of nice useful information in the shared memory segment, it comes back filled with garbage! The count of processes attached is not correct (mine showed -28 when it should have been 0).

    I don't see anything in the kernel configuration that would disable shared memory semaphores, so I have no idea what would be breaking this, and it could be either a library problem or a kernel issue. (My guess is it's something in uClibc, not the kernel.)

    Regardless, the significance is that it is not going to run on a WRT54G without rewriting the parts that use shared memory segments.
     
  10. BugCrush3r

    BugCrush3r Network Guru Member

    BAD news then :(

    Well if I cant get this program to work maybe Id have better luck trying to find a way to integrate it into the web access part of the WRT54G

    http://www.no-ip.com/integrate/
     

Share This Page