By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
464,564 Members | 947 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 464,564 IT Pros & Developers. It's quick & easy.

Re: sending executable data over network..

P: n/a
Le Tuesday 24 June 2008 08:59:40 Piyush Anonymous, vous avez √©crit¬*:
hi,
i wish to change the way the function definition at run time in a running
server. new function code which is to be executed is provided by a client
at different location.
i am getting it by reading a file and sending it using makefile() with
server/client connected using sockets.

how can make the lines received in a string array as new function
definition? or should i receive it in a different way?

is there any better way to do the entire thing?
One way is to transmit the code as a string and compile it on server-side with
the 'compile' builtin function. Another is to compile it on client-side and
transmit the resulting code object with the marshal module but there are many
restrictions on it (specially the fact that the client and server will have
to run the same python version) so carefully read the docs first. I'd choose
the first solution, eventually using the pickle module to avoid encoding
problems.

--
Cédric Lucantis
Jun 27 '08 #1
Share this Question
Share on Google+
1 Reply

P: n/a
Cédric Lucantis wrote:
Le Tuesday 24 June 2008 08:59:40 Piyush Anonymous, vous avez écrit :
>hi,
i wish to change the way the function definition at run time in a running
server. new function code which is to be executed is provided by a client
at different location.
i am getting it by reading a file and sending it using makefile() with
server/client connected using sockets.

how can make the lines received in a string array as new function
definition? or should i receive it in a different way?

is there any better way to do the entire thing?

One way is to transmit the code as a string and compile it on server-side with
the 'compile' builtin function. Another is to compile it on client-side and
transmit the resulting code object with the marshal module but there are many
restrictions on it (specially the fact that the client and server will have
to run the same python version) so carefully read the docs first. I'd choose
the first solution, eventually using the pickle module to avoid encoding
problems.
You may want to take a look at Twisted Python Perspective Broker. I believe it
does what you are looking for.

-Larry
Jun 27 '08 #2

This discussion thread is closed

Replies have been disabled for this discussion.