- 
                Notifications
    
You must be signed in to change notification settings  - Fork 3.8k
 
linux: support abstract unix sockets #4030
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
          
     Merged
      
      
    
                
     Merged
            
            
          Conversation
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
    Add two new APIs for binding and connecting to abstract UNIX sockets. Fixes: libuv#4028
a157008    to
    f70a685      
    Compare
  
    
              
                    santigimeno
  
              
              approved these changes
              
                  
                    May 30, 2023 
                  
              
              
            
            
              
                    trevnorris
  
              
              approved these changes
              
                  
                    May 30, 2023 
                  
              
              
            
            
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good. Should documentation be added later?
| 
           Documentation added and I backed out the long patch check per #4036 (comment) - i.e., it simply truncates long paths again. After this is merged I'll open a PR to introduce a flag to error on long paths.  | 
    
    
  ggoodman 
      added a commit
        to ggoodman/node
      that referenced
      this pull request
    
      Sep 15, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: nodejs#49656 Refs: libuv/libuv#4030
    
  ggoodman 
      added a commit
        to ggoodman/node
      that referenced
      this pull request
    
      Sep 15, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: nodejs#49656 Refs: libuv/libuv#4030
    
  ggoodman 
      added a commit
        to ggoodman/node
      that referenced
      this pull request
    
      Sep 15, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: nodejs#49656 Refs: libuv/libuv#4030
    
  nodejs-github-bot 
      pushed a commit
        to nodejs/node
      that referenced
      this pull request
    
      Sep 18, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: #49656 Refs: libuv/libuv#4030 PR-URL: #49667 Reviewed-By: Santiago Gimeno <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
    
  ruyadorno 
      pushed a commit
        to nodejs/node
      that referenced
      this pull request
    
      Sep 28, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: #49656 Refs: libuv/libuv#4030 PR-URL: #49667 Reviewed-By: Santiago Gimeno <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
    
  alexfernandez 
      pushed a commit
        to alexfernandez/node
      that referenced
      this pull request
    
      Nov 1, 2023 
    
    
      
  
    
      
    
  
The introduction of the uv_pipe_bind2 and uv_pipe_connect2 methods in libuv v1.46.0 changed the behaviour of uv_pipe_bind and uv_pipe_connect. This broke the ability to connect to abstract domain sockets on linux. This change ports PipeWrap to use the new uv_pipe_bind2 and uv_pipe_connect2 methods to restore abstract domain socket support. Fixes: nodejs#49656 Refs: libuv/libuv#4030 PR-URL: nodejs#49667 Reviewed-By: Santiago Gimeno <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
    
  vtjnash 
      added a commit
        to vtjnash/libuv
      that referenced
      this pull request
    
      Nov 6, 2023 
    
    
  
    
  vtjnash 
      added a commit
        to vtjnash/libuv
      that referenced
      this pull request
    
      Nov 6, 2023 
    
    
      
  
    
      
    
  
This was incorrectly dropped by libuv#4030, where previously connecting to "" might fail eventually, now instead it would return EINVAL and then fail to initialize the struct or call the callback.
    
  vtjnash 
      added a commit
        to vtjnash/libuv
      that referenced
      this pull request
    
      Nov 7, 2023 
    
    
      
  
    
      
    
  
This was incorrectly dropped by libuv#4030, where previously connecting to "" might fail eventually, now instead it would return EINVAL and then fail to initialize the struct or call the callback.
    
  vtjnash 
      added a commit
        to vtjnash/libuv
      that referenced
      this pull request
    
      Nov 7, 2023 
    
    
  
    
  deokjinkim 
      added a commit
        to deokjinkim/node
      that referenced
      this pull request
    
      Nov 10, 2023 
    
    
      
  
    
      
    
  
We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: nodejs#50652 Refs: nodejs#49667 Refs: libuv/libuv#4030
    
  deokjinkim 
      added a commit
        to deokjinkim/node
      that referenced
      this pull request
    
      Nov 10, 2023 
    
    
      
  
    
      
    
  
We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: nodejs#50652 Refs: nodejs#49667 Refs: libuv/libuv#4030
    
  nodejs-github-bot 
      pushed a commit
        to nodejs/node
      that referenced
      this pull request
    
      Nov 12, 2023 
    
    
      
  
    
      
    
  
We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: #50652 Refs: #49667 Refs: libuv/libuv#4030 PR-URL: #50657 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: theanarkh <[email protected]>
    
  vtjnash 
      added a commit
      that referenced
      this pull request
    
      Nov 14, 2023 
    
    
      
  
    
      
    
  
This was incorrectly dropped by #4030, where previously connecting to "" might fail eventually, now instead it would return EINVAL and then fail to initialize the struct or call the callback.
    
  vtjnash 
      added a commit
        to vtjnash/libuv
      that referenced
      this pull request
    
      Nov 14, 2023 
    
    
      
  
    
      
    
  
This was incorrectly dropped by libuv#4030, where previously connecting to "" might fail eventually, now instead it would return EINVAL and then fail to initialize the struct or call the callback.
    
  targos 
      pushed a commit
        to nodejs/node
      that referenced
      this pull request
    
      Nov 23, 2023 
    
    
      
  
    
      
    
  
We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: #50652 Refs: #49667 Refs: libuv/libuv#4030 PR-URL: #50657 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: theanarkh <[email protected]>
    
  UlisesGascon 
      pushed a commit
        to nodejs/node
      that referenced
      this pull request
    
      Dec 11, 2023 
    
    
      
  
    
      
    
  
We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: #50652 Refs: #49667 Refs: libuv/libuv#4030 PR-URL: #50657 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: theanarkh <[email protected]>
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
      
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Add two new APIs for binding and connecting to abstract UNIX sockets.
Fixes: #4028