Hi Phil,
Thanks a lot for replying. So here is the deal. I am working on an
enhanced PVFS with an entirely new set of state machines added to create a new
struct called ecreate. Its working fine (all state machines and everything).
Unfortunately, the guy who made these changes is not around. I need to pass
some extra parameters through sm_p(client) to s_op (server). So I enhanced the
client side to include the new attribute, malloced it, initialized it and sent
it (state machine post, BMI, blah blah).
Now, on the server side, I want to assign it to
s_op->req->u.ecreate.NEW ARG. I followed the path that does the assignment. It
ends up in a really complicated macro. Also, I am using PVFS-2.6.3 which does
not have pvfs2-proto.h. It starts with pvfs2-req-proto.c. And then I lose track
of whats going on in an array of complicated macros. Any help would be greatly
appreciated!
Now that I know there are people to help, let me chip in an additional
quick question :). In some situations in my code, I do not want some clients to
access some file (some ACL stuff). For now, I detect untrusted clients in
final_response.c and set an js_p->error_code and return 1. This causes the
client to just hang. Is there a way to prematurely return a clean error to the
client? (This problem is low priority though)
Thanks a ton man!
Thanks and regards,
Ankur
----- Original Message -----
From: "Phil Carns" <[EMAIL PROTECTED]>
To: "Ankur G Pai" <[EMAIL PROTECTED]>, [email protected]
Sent: Thursday, October 9, 2008 11:47:35 AM GMT -05:00 US/Canada Eastern
Subject: Re: [Pvfs2-developers] Re: [Pvfs-developers] Pvfs client-server
communication doubt
Hi Ankur,
Just to clarify, have you added a new request type called "ecreate" or
is that a typo and you have just added a field to the existing "create"
struct?
This makes a difference in the extent of the changes that you will need
to make. If you are modifying an existing struct then the bulk of the
work is to just adjust the encoding macro in pvfs2-proto.h to capture
the new field properly. It should then get propagated to the server and
show up in its s_op->req->u.create struct in the state machine.
If you are adding a completely new request struct, that typically
implies creating new state machines on both the client and server side
that correspond to it (we may have a document on this that I can point
you to, its a bit more involved).
Sorry about the slow reply, but I think we can help you sort it out if
you are still working on this issue.
-Phil
Robert Latham wrote:
> On Thu, Oct 02, 2008 at 06:46:42PM -0400, Pai, Ankur G wrote:
>> Hey,
>> Here is what I want to do. I want to send additional parameters
>> from my PVFS client to the server. I modified the client side
>> struct such that I now have an additional parameter
>> sm_p->req.u.ecreate.ACCESS_CTRL. I now need to transport it to
>> the server side. Could you direct me to the file that actually
>> assigns the client side parameters to the server ones? As in
>> where exactly does the server parameter s_op get populated?
>
> I'm directing this to the pvfs2-developers mailing list.
>
--
Thanks & Regards,
Ankur Pai
Graduate Student - Computer Science
College of Computing
Georgia Institute of Technology
--
Thanks & Regards,
Ankur Pai
Graduate Student - Computer Science
College of Computing
Georgia Institute of Technology
_______________________________________________
Pvfs2-developers mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers