Anyways, I can't get it to work properly. I took Adobe's script, which is intended to work with xinetd (the standalone script btw works fine, but I really want xinetd to handle this). After some small changes it seems to run fine now, but the Flashplayer complains about "malformed" XML. I changed the XML now a 1000 times, but it's always the same, and I begin to wonder, if maybe xinetd might be the problem?
This is the XML:
Here's the perl script that takes this file and delivers it to Flash:
As you can see I also tried not to send the file's content, but a string, to make sure there are no extra bytes involved. However, Flash keeps saying that it will ignore the XML because it's malformed.
So, is it possible that xinetd adds something to the result?
Or does anyone sees another thing that might be wrong? I'm fighting with this for 2 days now, so any help is very appreciated.
Have you used a packet sniffer to ensure that the bytestream returned is exactly as expected? Also, the XML you returned as string, you are sure it is valid?
Last, try force auto flush and see if that helps (put it at the beginning of the script):
no, I didn't use a packetsniffer (yet). I also tried the auto flush, but it made no difference.
The XML has to be valid, because when I run the standalone script (also from Adobe) with the same XML file, it all works fine.
The scripts, standalone and xinetd service, are basically the same, except that the standalone handles all the socket stuff itself, where the xinetd service script just reads from STDIN and writes to STDOUT. The other parts (handling the rquest, reading the file) are identical.
That's why I'm pretty sure now that it has something to do with the xinetd. Maybe I'll try a packetsniffer when I have some spare time. Meanwhile I use the standalone daemon and have a cron job watching over it. One more service constantly running... well, if Adobe thinks this is safer than an XML served by my webserver... sigh.
Do you need to print anything before the XML code itself is printed to STDOUT? Some type of protocol header maybe?
Hm, I don't think so. The connection is made by a so called XMLSocket in Flash, it's a socket that sends and receives string data (XML mainly, but any string is fine, as long as you don't let Flash parse it, but here it is automated because the request gets out before you actually use your socket connection).
So, what I have is
in the standalone script versus
in the xinetd script.
I guess that xinetd is supposed to push the output into the socket and add the terminating NULL byte. I don't know how xinetd works, but I've read that you just have to give your output into STDOUT when you're doing a xinetd service, so I guess this is the way to do it.
I have no idea how xineted works either, never even heard of it myself. I now see there are two scripts., one using sockets and one not, which must be the xineted version.
Then you should use it now. As you have a static version that works but a version served from Perl does not, that makes a good control experiment to find out what is the difference. Make sure the XML used is identical in both cases.
HI everyone,
Nice to meet you all.
I recently rebooted Slackware 12.1 running on a Dell PowerEdge 2400. after 240 days of continuous run-time, and discovered it gets stuck in a sbin/agetty loop. We were rebooting because trying to mount root in webmin broke a bunch of things. Couldn't even get... (3 Replies)
Hi Everyone,
I'm new here and I was checking this old post:
/shell-programming-and-scripting/180669-splitting-file-into-several-smaller-files-using-perl.html
(cannot paste link because of lack of points)
I need to do something like this but understand very little of perl.
I also check... (4 Replies)
Hi All,
I am facing some problems with bad characters in my file.For example-
00000000509 TCI DEVOFFERS= 1
Now I want to remove all bad characters and replace with *.
Please suggest some solution.
Along with that How to mention a range of ASCII values in TR command to replace?
... (2 Replies)
When you open a file on a fileserver from your client, what type of operation takes place on the server? I imagine the server's hard drive reads the file that the client has requested, and then makes it available somehow through the network share, is that accurate? Also what service on Unix/Linux... (0 Replies)
Here is a puzzler.
To start, let me say that I've done a search on this issue and it is definitely not related to line endings being encoded in windows returns.
I get this error when I run SOME perl scripts. I have a script called hello_world.pl. I do $cp hello_world.pl new_hello_world.pl... (0 Replies)
Dear all,
I am a windows user, am not into unix/linux at all.
however, I have a new client who is asking me if unix can act as file server.
i.e. my application imports files from several locations and put them in one location (on a shared folder on the server), so my application will be... (7 Replies)
I need to know the way. I have got parsing down some nodes. But I was unable to get the child node perfectly. If you have code please send it. It will be very useful for me. (0 Replies)
I'm new to this.
My question is I have freebsd installed on one computer. I want to make it a file server. My main computer is windows XP. How do I make the freebsd machine in a fileserver. and so that windows xp can see it and access it (2 Replies)
i want to edit inetd.conf for security on my redhat 7.1 box, but i dont have it in my /etc directory, rather, i have xinetd.conf. Can i use xinetd.conf for the same purpose, is it as useful as inetd.conf? (2 Replies)