-
-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem with RPC: Add abilty to exclude certain types/ methods #15
Comments
The methods are exported, so they shouldn't be getting randomized. This is because of interfaces. The type API is exported, but that doesn't affect interfaces, so we do randomize that name. I assume that's where your problem arises:
This is good old reflect, so there's no way we can detect this. We could give up and never garble exported types, but that would be pretty flawed. I'm not a big fan of special comments telling tools what to do, so I'd rather not add something like Something that comes to mind is having
|
Will try the workaround. |
If you mean the |
I thought this is implemented already, my bad |
It's a must feature. Especially we can use garble to build a plugin. |
When I garble the ToRat client, compiling works even with cgo (many thanks).
However I communicate over RPC with the server and the server needs the API function names to stay the same.
I get the following error when a garbled client connects:
"Invalid Hostname rpc: can't find service API.Hostname"
Client RPC Api definition: https://github.com/lu4p/ToRat/blob/master/torat_client/rpcapi.go
Example Server RPC Call: https://github.com/lu4p/ToRat/blob/c23e742bc5937c40320bf437479cd7083c83e78d/torat_server/shell.go#L199
Any Ideas on how certain types and their methods could be excluded?
The text was updated successfully, but these errors were encountered: