Skip to content
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

System calls such as and fail if encrypted #283

Closed

Conversation

jrrk2
Copy link

@jrrk2 jrrk2 commented Apr 28, 2020

This patch recognizes a SystemTFIdentifier and turns off encryption for that token. Otherwise the obfuscated Verilog cannot be compiled if it contains such calls.

I await further guidance on testcase integration.

@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

ℹ️ Googlers: Go here for more info.

1 similar comment
@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

ℹ️ Googlers: Go here for more info.

@googlebot googlebot added the cla: no A contributor in the pull request has yet to sign the CLA with Google. label Apr 28, 2020
@jrrk2
Copy link
Author

jrrk2 commented Apr 28, 2020

@googlebot I signed it!

@googlebot
Copy link

We found a Contributor License Agreement for you (the sender of this pull request), but were unable to find agreements for all the commit author(s) or Co-authors. If you authored these, maybe you used a different email address in the git commits than was used to sign the CLA (login here to double check)? If these were authored by someone else, then they will need to sign a CLA as well, and confirm that they're okay with these being contributed to Google.
In order to pass this check, please resolve this problem and then comment @googlebot I fixed it.. If the bot doesn't comment, it means it doesn't think anything has changed.

ℹ️ Googlers: Go here for more info.

1 similar comment
@googlebot
Copy link

We found a Contributor License Agreement for you (the sender of this pull request), but were unable to find agreements for all the commit author(s) or Co-authors. If you authored these, maybe you used a different email address in the git commits than was used to sign the CLA (login here to double check)? If these were authored by someone else, then they will need to sign a CLA as well, and confirm that they're okay with these being contributed to Google.
In order to pass this check, please resolve this problem and then comment @googlebot I fixed it.. If the bot doesn't comment, it means it doesn't think anything has changed.

ℹ️ Googlers: Go here for more info.

Copy link
Collaborator

@fangism fangism left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For tests, take a look at:

https://github.com/google/verible/blob/5cf83fe89203ad4f508771fb12cac9433c56adba/verilog/transform/obfuscate_test.cc#L56

I suspect some of them will need to be updated by this change.
Run bazel test -c opt ... to confirm.
Feel free to add more that exercise system function calls, including a few standard ones.

verilog/transform/obfuscate.cc Outdated Show resolved Hide resolved
@fangism
Copy link
Collaborator

fangism commented Apr 28, 2020

You may mark in your commit message:

fixes #282 

@jrrk2
Copy link
Author

jrrk2 commented Apr 28, 2020

@googlebot I signed it!

@jrrk2
Copy link
Author

jrrk2 commented Apr 28, 2020

@googlebot I fixed it.

@googlebot
Copy link

CLAs look good, thanks!

ℹ️ Googlers: Go here for more info.

1 similar comment
@googlebot
Copy link

CLAs look good, thanks!

ℹ️ Googlers: Go here for more info.

@googlebot googlebot added cla: yes All contributors in pull request have signed the CLA with Google. and removed cla: no A contributor in the pull request has yet to sign the CLA with Google. labels Apr 28, 2020
Copy link
Collaborator

@fangism fangism left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for submitting a fix so quickly!

@hzeller hzeller closed this in 2c98e20 May 4, 2020
nikhiljha pushed a commit to nikhiljha/verible that referenced this pull request Sep 27, 2022
1. This is a breaking change for the following servers, which will have to be
reinstalled:

 - ltex
 - clangd

2. This is a breaking change for users who reach into the default options (for
   example via server:get_default_options()) to access the `cmd` property.
   nvim-lsp-installer no longer provides the `cmd` (except in a few
   instances), but instead provides an amended PATH which allows neovim's LSP
   client to locate the locally installed executable.

   To access the `cmd`, simply access it via lspconfig instead, for example
   like so:

    local default_config = require("lspconfig.server_configurations.rust_analyzer").default_config
    print("I can now access the cmd governed by lspconfig:", default_config.cmd)

3. This is a breaking change for 3rd party use cases that makes use of the
   `executable()` APIs (e.g., `npm.executable(root_dir, "tsserver")`). The
   recommended usage is to instead to use the canonical name of the command
   ("tsserver"), while providing an amended PATH, for example:

    local npm = require("nvim-lsp-installer.installers.npm")
    local server = server.Server:new {
        ...,
        root_dir = root_dir,
        installer = npm.packages { "tsserver" },
        default_options = {
            cmd = { "tsserver" },
            cmd_env = npm.env(root_dir),
        }
    }
nikhiljha pushed a commit to nikhiljha/verible that referenced this pull request Sep 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla: yes All contributors in pull request have signed the CLA with Google.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants