I'm working on very old code. I mostly need protocol advice. this thing is working a lot better than it used to now but it's not perfect. I discovered that if I make a request for a very large number of very long group names that I'll wind up getting a "Transaction Response[transaction continuation]" packet packet which I had to add a function to deal with. I am now capable of retrieving one whole set of local user group names.
The problem comes when, after I succeed in getting a very large list of group names, I ask for another. The second request fails and I get an NT error code of STATUS_PIPE_BUSY. Does anyone know what that means? How can I deal with it? Do I have to send some sort of ack? do I need to close out a transaction? The code works fine as long as I don't ask for packets that are too large, so I imagine there must be some special client side handling needed (beyond what I'm doing) for large packets. I'm not sure why the code asks for a second set of local user groups. It appears that not all group memberships are reported with the first transaction. It appears that reported group membership changes depending on how the question is asked or maybe it depends on who's asking. I can't tell so far. The requests look more or less identical but they retrieve different group membership info. Thanks for any help. - Ben
