Slashdot Mirror


G-WAN, Another Free Web Server

mssmss writes "Has anyone used G-WAN — a free (as in beer), supposedly fast and scalable Web server? The downside is it supports only C scripts, which the author claims is a plus since most programmers know C anyway. There is currently only a Windows release and no clear answer in their FAQs whether there would be Linux/Solaris releases. As an interesting aside, releasing a Web server while at the same time fighting a losing battle (PDF) with a large bank over a piracy claim of $200 million (the bank is alleged to have done the piracy) is quite a feat."

46 of 217 comments (clear)

  1. Comment removed by account_deleted · · Score: 4, Insightful

    Comment removed based on user account deletion

  2. Value? by mcrbids · · Score: 4, Interesting

    Where's the value/point in releasing another limited-utility webserver?

    I see the point in having a few options for a particular category, so that you can choose between different optimizations for things like cost, performance, and compatibility. But why something of limited utility (only runs C scripts) compatibility (only runs on 'doze) AND cost? (not OSS, but it's free!)

    I don't know. Even with a fairly "heavy" web server such as Apache, the performance increases by going with another "lighter" platform seldom represent more than a year or so of hardware advance.

    So.... Why?

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
    1. Re:Value? by Anonymous Coward · · Score: 2, Funny

      So.... Why?

      afaik, the main reason for giving it away for free is: its author needs much traffic on his site, in order to hide some very secret traffic happening there.

      hard to believe, but this is what he pretends!

      so, please, download it, even if you don't plan to use it :-)

    2. Re:Value? by Anonymous Coward · · Score: 2, Insightful

      Only if it does something of value.

      I recall a very lightweight web server that some large outfit uses to serve up images. That's it. only images. Apparently it made things speed up significantly.

      I don't see G-WAN being anything special, though.

  3. Spite? by innocent_white_lamb · · Score: 3, Interesting

    It looks like this chap has a grudge against Microsoft (he says his company was "eradicated from the market the usual way", apparently by Microsoft) so he wrote this webserver to hit them "where it hurts".
     
    I don't know if spite is the best motivation to write excellent software.

    --
    If you're a zombie and you know it, bite your friend!
    1. Re:Spite? by zblack_eagle · · Score: 4, Insightful

      I don't know how writing a web server that requires a Microsoft OS exactly hits them "where it hurts"

    2. Re:Spite? by tobiasly · · Score: 4, Interesting

      Not just against Microsoft, this guy just seems to be full of piss and vinegar in general. Every entry in his blog is a rant against something, whether it's Microsoft, the world economy, the Western Hemisphere, or those stealthy, mysterious corporate hacker ninjas who spend every waking hour trying to take down his ironclad website due to the obvious danger he poses to The Man.

      Even the software's FAQ takes cheap shots at the objects of his vast paranoia. Stay far, far away from anyone with that big a chip on their shoulder.

  4. Re:Why? by Anonymous Coward · · Score: 5, Funny

    It ups the difficulty level, allowing you to more easily grind on your way towards Web Master III.

  5. Help me out here by TimHunter · · Score: 5, Insightful

    Why does the world need a non-free web server that only runs on Windows when there's already plenty of free (as in speech) ones out there (http://www.apache.org/, http://www.lighttpd.net/) that run everywhere?

    1. Re:Help me out here by Draek · · Score: 5, Insightful

      how many of todays Perl and PHP website scripting security issues would evaporate if the authors were forced to write in a less flexible language that took a few moments to actually compile before being enabled?

      None. Contrary to popular belief, lower-level languages don't make shitty programmers competent.

      --
      No problem is insoluble in all conceivable circumstances.
    2. Re:Help me out here by Improv · · Score: 2, Insightful

      Your points would be warranted if:
      1) CPAN were Perl itself.
      2) CPAN were atypical for a collection of useful modules for any programming language.
      3) C were better.

      --
      For every problem, there is at least one solution that is simple, neat, and wrong.
    3. Re:Help me out here by Rary · · Score: 2, Insightful

      But I think the point is that, since you need Windows to run G-WAN, then you've already paid for IIS, so why the need for a different closed-source (but free as in beer) web server?

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    4. Re:Help me out here by Antique+Geekmeister · · Score: 3, Insightful

      But those lower level programmers are not getting the experience that turns them into good programmers. They're cutting and pasting bad code and propagating errors which are nightmarish to track down after the fact. And yes, I'm trusting the language designer to write a good _compiler_ to write small utilities, well written, rather than presenting every programmer with that stunning mass of debris I find coming out of places like CPAN.

      We should not resist new tools for good programmers. We should resist toolboxes that include that many slightly different hammers, many of which are liable to break and many of which have handles likely to slip in the grip of a normal user, sending a large and spinning object flying towards anyone working near them. I'm afraid I've been that person near them and struck with those handles too many times in the last five years, and from observation, far too many of the scripting language authors need to go back and be _mentored_ in how to do efficient or even safe code, because they certainly didn't learn it dealing with Perl.

      For examples of the insanity, I'll point you directly to mod_perl itself and resolving which versions of mod_perl itself are compatible with your project. Though that utility was written in C, it has to deal with a lot of Perl's vagaries, and it can be very awkward to coordinate multiple old and new Perl utilities with a single mod_perl release.

    5. Re:Help me out here by Jesus_666 · · Score: 2, Insightful

      You're arguing that nobody who doesn't already know how to program should be allowed to learn it. Inexperienced programmers always create shitty code, in any language. And they will resort to cut-and-paste code from random websites whenever convenient.

      Forcing them to use C for web development won't change that; you'll see websites that leak memory like a sieve, open supposedly read-only files in read-write mode and then reuse that pointer (which the coder doesn't notice because he only ever tested with the same value being written to that file) or have all methods declared as void* for "flexibility", with results being casted as inappropriate.

      C does not magically make shitty programmers good. Experience does. And C is not the only language on the market in which one can possibly gain that.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    6. Re:Help me out here by SharpFang · · Score: 2, Informative

      Maybe some but C as a text generation and processing language (which is the basic function of CGI) is definitely a very bad choice. C strings are inherently fault-prone.

      In Perl or PHP you do $y .= " $x \n"; and it is totally fault-proof. It is easy and straightforward, and totally foolproof. Now write something like that in C. Allocate buffers for x and y, check for overflows, reallocate if buffers are too short, make sure the number of arguments matches the format string, and within maybe 15 lines have the result ready, not nearly as readable, not a shade close to as fault-proof, and 1500% longer.

      I'm not saying a compiled, secure language would be bad for CGI scripting. I'm just saying C is a horrible choice.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  6. Re:Big Plus! by Tablizer · · Score: 5, Funny

    i C your point

    -1 Bad Pun

  7. Re:Big Plus! by bcrowell · · Score: 5, Insightful

    Absolutely. What makes me especially excited about trying G-WAN is that whenever it crashes I'll have the extra fun of figuring out whether the reason it crashed was because my own C code crashed, or because the code in his web server crashed. But wait, there's more! Adding to this really enjoyable programming problem will be the extra challenge that comes with the fact that his code is closed source, so if the crash occurs inside his code, I'll be able to get in there with a debugger and spend an afternoon figuring out what happened and whether there's any way to change the data my code gives to his code so that his code won't crash crash. I can see many really enjoyable weekends ahead of me in my parents' basement, with a bowl of nachos and a liter jug of root beer. Good times!

  8. Re:I dont exactly see the points by thetagger · · Score: 2, Interesting

    People claim Apache is slow, but why not using a reverse proxy like Varnish to "speed it up" and still keep the features. I really see no reason why I should use G-WAN or lighttpd.

    Not everybody is serving easily-cacheable stuff. Reverse proxies are great for semi-static websites like news sites, but they are useless for social-networking, webmail and other interactive sites that need to render customized content for each particular user.

    Anyway, nginx is my current favorite web server.

  9. IIS by KalvinB · · Score: 2, Insightful

    If you're going to be "scripting" in C on Windows you might as well go fully compiled with IIS (free with any Windows OS you'd be running on a server) and C# (Express version also free). Get MySQL with ODBC and you're all set.

    I use PHP on Apache for flexibility. If I wanted to use C I'd compile it.

  10. The real question... by amirulbahr · · Score: 5, Insightful

    So the guy wants to write a web server to scratch an itch or something. No big deal there. The question is WHY THE FUCK DID IT MAKE SLASHDOT?

    1. Re:The real question... by MobileTatsu-NJG · · Score: 4, Insightful

      The question is WHY THE FUCK DID IT MAKE SLASHDOT?

      Numerous people on this site have loudly proclaimed "Alternatives are great!!!" and have had their comments modded up for it.

      --

      "I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)

    2. Re:The real question... by Anonymous Coward · · Score: 4, Funny

      Alternatives are great!!!

    3. Re:The real question... by 93+Escort+Wagon · · Score: 3, Insightful

      So the guy wants to write a web server to scratch an itch or something. No big deal there. The question is WHY THE FUCK DID IT MAKE SLASHDOT?

      C'mon. Whenever some new Linux distribution (or variant on an existing distro) is announced, it automatically becomes a Slashdot submission. Why should it be any different with new web servers?

      Of course, whenever we have those HIGYALD (Hey, I've Got Yet Another Linux Distro) stories, there is always at least one post similar to yours, asking why it's news. And there's always at least one response to that post, explaining that alternatives are great - which is true here as well, so the circle is now complete.

      --
      #DeleteChrome
    4. Re:The real question... by Anonymous Coward · · Score: 2, Funny

      mod parent up!

  11. Re:Okay, is it just me by timmarhy · · Score: 4, Insightful
    let me see.

    Using C as a "scripting" language. CHECK

    Using C as a "scripting" language on a WEB SERVER. CHECK

    Writing a non free webserver for windows only with very limited features. CHECK

    yep, he's passed the "i'm crazy as a loon" test.

    --
    If you mod me down, I will become more powerful than you can imagine....
  12. It can't even talk http properly by RJabelman · · Score: 4, Informative

    His server returns 404 for errors:

    http://www.gwan.com/csp_crash.html

    That's going to make wirting for this thing really confusing.

    1. Re:It can't even talk http properly by Phroggy · · Score: 3, Insightful

      Oh geez. He's returning Error 404 when a script crashes? That means he can't be bothered to find the list of HTTP status codes, because if he did he'd see that 404 is clearly the wrong choice. It also means he can't be bothered to look at other implementations, because then he'd have noticed that popular servers such as Apache and IIS return Error 500 when scripts are broken.

      From this we can conclude that he probably hasn't read the HTTP protocol specification (because it'd be hard to read the spec but miss the list of status codes), and he has no idea how current servers work (so instead of copying their good ideas, he'll be reinventing his own broken wheels).

      And from THAT we can conclude that his browser is a steaming pile of crap. The reason it's not open source is probably because he's afraid that somebody would read his code and make fun of him for it.

      Heh, check out the actual 404 error message - it's malformed HTML 2.0! If you're going to go to the trouble of including a DOCTYPE declaration, you ought to at least validate the code.

      --
      $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
      $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
  13. Re:10. subnet? by Antique+Geekmeister · · Score: 4, Insightful

    That would be like saying "the fifth floor is in our building, not a public street address, so this warrant is useless". I bet that would be a useful bit of precedent to establish for lots of people who are served with search warrants. Given the router information mentioned in the article, and the settings of the laptop with an address in the address space, it's unsurprising that our plaintiff was upset that those machines did not get reported or searched properly.

  14. Ah g-wan... by martinmarv · · Score: 3, Funny

    ... g-wan, g-wan, g-wan

    G-wan, g-wan, g-wan, g-wan, g-wan

    Mrs Doyle approves

  15. Re:Big Plus! by BlitzTech · · Score: 3, Insightful

    Yes, your anecdotal evidence clearly suggests that scripting languages have a place as sub-standard languages to design a web-enabled application. Never mind all the professional Drupal developers. Or people that use Joomla. Yeah, platforms like those two are total wastes and it would have been infinitely wiser to write it as an Apache module.

    I'm baffled that you point to using C as the root reason that your developers' code had less bugs. Speed I'll concede, but not bugs. Give your guys some credit. I'll bet them using C isn't why they write good code.

  16. Are you fucking kidding me? by Weaselmancer · · Score: 4, Informative

    I asked him to explain why stable versions (some of these stable releases were several years old, too) of the software he was recommending contained over 100 bug fixes. He couldn't provide a suitable answer, and thus management gave him the boot. And so we're not using Drupal.

    You are out of your mind. Bug fixes to a stable release is your metric of quality?

    May I ask what OS you guys are using in your bug-free paradise? You know, the OS that doesn't need any bug fixes after release. That one. I'd like to go buy myself a copy because that sure sounds great.

    --
    Weaselmancer
    rediculous.
    1. Re:Are you fucking kidding me? by thetagger · · Score: 5, Funny

      I asked him to explain why stable versions (some of these stable releases were several years old, too) of the software he was recommending contained over 100 bug fixes. He couldn't provide a suitable answer, and thus management gave him the boot. And so we're not using Drupal.

      If the elevated number of bug fixes is a concern to you, I can provide you with my own customized version of Drupal without any bugfixes in it for a reasonable fee. That is the beauty of open source.

  17. Re:Okay, is it just me by uglyduckling · · Score: 2, Insightful

    Writing a website full of incomprehensible ranting about Microsoft and the computer industry, whilst claiming that releasing a[nother] free web server for their platform will "hit them where it hurts". CHECK

  18. Re:Big Plus! by Kagetsuki · · Score: 2, Interesting

    C scripts are not C, it's just a scripting language that looks like C. You can't actually import normal C libraries and if I recall (I've only used C scripts once) you can't do much in terms of memory operations. On top of that they are scripts, so if they screw up the parser will tell you where thing crashed. Please don't be so critical of something you don't understand, scripts with C like context are nothing new and there are a variety of advantages to using the same syntax between your actual code and your scripting language.

    Also, the scripting languages you mentioned are either not easily embeddable or somewhat focused for certain purposes. You should realize simple scripting and embedded scripting can be very different things. Particularly scripting languages like Lua can prove to be quite incredible, offering extremely advanced features (like tables) while still remaining surprisingly quick. Depending on what you are doing Lua can actually allow less capable programmers to write surprisingly complex code to enhance your program - we used it about a half year ago and with our scripts you could get moving objects on the screen in 3 lines, interactivity in 7, and easily an entire interface in less than 100. There are also a variety of scripting languages for actual embedded (as in hardware) applications which focus on being fast and light, but are often equally light on advanced features. I'd like to see you get python running capably on an 8-bit MicroController, or php doing something useful on one....

  19. Re:Big Plus! by Hooya · · Score: 2, Insightful

    > software he was recommending contained over 100 bug fixes

    So, did you guys replace windows, exchange, office with other products? Wait a minute...

    Oops, my bad. You were talking about Joomla and Drupal. Somehow I did a mental s/Joomla/windows/g;s/Drupal/Office/g' in my head - subconsciously, I might add. And the whole time I was like - "Those bastards! The SP[123] and the freggin updates.windows.com" and not letting me shut down my computer without applying patches every other day (or so it seems)... But you're right. I googled a bit for a list of all the bugs for Windows and Office and couldn't find it. Occams Razor: there are none! That's professional! The Drupal/Joomla punks have the bugs listed on their OWN website!! How amateur!!

  20. Re:Big Plus! by onefriedrice · · Score: 4, Interesting

    Absolutely. What makes me especially excited about trying G-WAN is that whenever it crashes I'll have the extra fun of figuring out whether the reason it crashed was because my own C code crashed, or because the code in his web server crashed.

    Finding where a program crashed is way easier than finding a logic error, and those can occur in any language. Actually, debugging crashes can lead to discovery of certain kinds of logic and/or runtime errors that would be difficult to find if your runtime environment is protecting you from ever seeing a crash (heaven forbid).

    I'm as much a fan of high-level languages, nice runtime environments, and useful abstractions as anyone, but I also happen to think that C gets more flak than it deserves. I really think universities are doing their graduates a disservice by educating them in the safe, comfortable confines of Java if they don't also teach them C. In my own subjective experience, the most capable and successful programmers I know (in any environment) are also the ones who are very comfortable in environments without garbage collection and restricted memory access.

    --
    This author takes full ownership and responsibility for the unpopular opinions outlined above.
  21. On the plus side ... by devloop · · Score: 3, Insightful

    Finally a platform with built-in buffer overflow support!

    Let the exploits games begin!

  22. Re:Big Plus! by physburn · · Score: 2, Insightful
    In case anyone missing the above authors obvious sarcasm. I'd like to add, that C is the natural language for creating buffer overrun errors. Lets Sigfault the webserver just by putting too long a string into your web form. Overruns or not, strings.h is not want I want to be using when trying parse text from a web form.

    ---

    Web Servers Feed @ Feed Distiller

  23. Reasoning for not being open source is astounding by mysidia · · Score: 2, Informative
    FAQ Entry:

    Why isn't it Open-Source?
    TrustLeap's technology could be mis-used, diluting or even compromizing it: open-source is now an on-ramp to very profitable closed data services. And if you are not rich enough to prevent others from stealing from you in the first place, then the 'rule of law' just helps the guilty to ruin you.

    And after reading items on this timeline. I begin to question the author's sanity...

  24. Re:Big Plus! by jfim · · Score: 3, Insightful

    Finding where a program crashed is way easier than finding a logic error, and those can occur in any language. Actually, debugging crashes can lead to discovery of certain kinds of logic and/or runtime errors that would be difficult to find if your runtime environment is protecting you from ever seeing a crash (heaven forbid).

    Except when your non-protected runtime doesn't crash and instead overwrites the stack, corrupts the malloc arena or writes to a dangling pointer causing corruption in a completely unrelated part of the program. Hours and hours of fun!

    One of the most important thing that managed programming languages brought is the fact that other parts of the program can't corrupt the system enough to make things undebuggable and that an error in a module is self-contained enough that it can't trample other parts of the program due to a memory error.

    I do agree though that C and other unmanaged languages should still be taught.

  25. Re: social networking by bobv-pillars-net · · Score: 2, Informative

    I'm also a sysadmin at a social networking site with highly dynamic content. Unfortunately, Varnish won't help much because over 90% of the cumulative CPU time is ate up by the MySQL server.

    --
    The Web is like Usenet, but
    the elephants are untrained.
  26. Few people can do string processing in C by Casandro · · Score: 2, Insightful

    Only very few people can do string processing in C. Actually I believe more people can do string processing in assembler than in C, as with assembler you see where the problems are whereas C makes you believe it has some kind of string support.

  27. I sent a message via his error log by mattr · · Score: 2, Informative

    I can't tell if sane or not but it certainly sounds like he is putting much effort into some software.
    So it would help to defuse the impression of insanity that most of the posters here are suggesting. He doesn't sound insane at least not for a French programmer who has left the country due to corruption apparently.

    Personally I would suggest an online explanation in more detail of two points:
    1) Would he offer source to a company/institution that will sign an NDA? I bet he would sell it to say Facebook if they wanted to compile their own.
    It isn't a crime to do closed source software although to my mind not offering the source in any way is going to slow adoption.
    2) I took the time to read the blog and pdfs. His legal problems seems to have started when he caught a bank using his software. See: groupama.pdf

    This refers to software he makes (in Switzerland now), Remote Anything

    Okay. First, the pdf shows they have installed packs of 65535 units of his software. This makes no sense at all and looks like a dumb programming bug. He doesn't show the evidence he has, or how he got the reports. I imagine he has a phone home routine in his program. This is maybe why it gets called a virus too I could imagine, if that is the app he is talking about. The $200M fine he is seeking is therefore either crazy, a lie, or else based on such strong evidence I can't imagine not mentioning it. I think he needs to explain what the evidence is, how he got it, and why the numbers suggest some binary math errors. He has four lines that look like "64 DS + 256 Masters + 65536 Slaves = 34 million euros" and this is totally crazy. He seems to be suggesting they are using 250,000 clients if I am correct. His own site says Fortune 500 companies often buy tens of thousands of licenses. He should explain the discrepancy.

    I think if he does these two things then he could expand his market more. If he doesn't want to go open source fine but comparing it to open source projects then should include this caveat. Maybe he could get a university or famous security company to audit the code.

  28. Re:Big Plus! by Toonol · · Score: 3, Insightful

    In response, I opened up a web browser, and found the changelogs for the most recent releases of the stable versions of PHP and Drupal. In front of management, I asked him to explain why stable versions (some of these stable releases were several years old, too) of the software he was recommending contained over 100 bug fixes.

    That's crazy. I think that consultant dodged a bullet by avoiding having to work with you guys.

  29. Re:Big Plus! by Richard+W.M.+Jones · · Score: 2, Informative

    Yes, writing scripts in C is a great idea.

    It's certainly not a new idea ...

    Minimal webserver, written in C, supporting C scripts ...

  30. Looking for source code? by redblue · · Score: 2

    A while back I had written a minimal HTTP server to figure out I/O completion ports in Windows over a weekend. You can download it from (BSD license): http://arunsagar.com/Code/rani.cpp
    Similar throughput specs as the OP's server, and the C++ code can be part of the server itself (great for debugging). Buggy and incomplete, but you can play, fix and extend as you wish.