dynamic-loader | simple Linux dynamic loader capable of loading simple | Build Tool library

 by   Ferdi265 C Version: Current License: No License

kandi X-RAY | dynamic-loader Summary

kandi X-RAY | dynamic-loader Summary

dynamic-loader is a C library typically used in Utilities, Build Tool applications. dynamic-loader has no bugs, it has no vulnerabilities and it has low support. You can download it from GitHub.

A simple Linux dynamic loader capable of loading simple binaries using simple shared libraries (no glibc support obviously, also the musl-gcc hacks in the build system are heavily ArchLinux specific)
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              dynamic-loader has a low active ecosystem.
              It has 7 star(s) with 0 fork(s). There are no watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              dynamic-loader has no issues reported. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of dynamic-loader is current.

            kandi-Quality Quality

              dynamic-loader has no bugs reported.

            kandi-Security Security

              dynamic-loader has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              dynamic-loader does not have a standard license declared.
              Check the repository for any license declaration and review the terms closely.
              OutlinedDot
              Without a license, all rights are reserved, and you cannot use the library in your applications.

            kandi-Reuse Reuse

              dynamic-loader releases are not available. You will need to build from source code and install.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of dynamic-loader
            Get all kandi verified functions for this library.

            dynamic-loader Key Features

            No Key Features are available at this moment for dynamic-loader.

            dynamic-loader Examples and Code Snippets

            No Code Snippets are available at this moment for dynamic-loader.

            Community Discussions

            QUESTION

            Resolving symbols differently in different dynamically loaded objects
            Asked 2017-Jan-07 at 05:54

            After reading these questions, I'm looking for some more detail about how to control symbol resolution order.

            In my problem, I have main executable exec. exec dynamically links to a.so and c.so. a.so dynamically links to b.so. b.so calls function foo, which is normally provided by c.so but in this case is also provided by exec. b.so only works with c.so's implementation of foo.

            A diagram of the situation:

            ...

            ANSWER

            Answered 2017-Jan-07 at 05:54

            Unfortunately there is no way to tweak symbol resolution at per-library level so there is not easy way to achieve this.

            If foo is actually implemented in main executable (not just copy-relocated to it) there's nothing you can do because symbols from main executables get the highest priority during resolution (unless you are ok with ultimately hacky runtime-patching of GOT which you aren't).

            But if

            • foo is implemented in c.so
            • and you are desperate enough

            you could do the following:

            • get return address inside interceptor in a.so (use __builtin_return_address)
            • match it against boundaries of b.so (can be obtained from /proc/self/maps)
            • depending on result, either do special processing (if caller is in b.so) or forward call to RTLD_NEXT

            This of course has obvious limitations e.g. won't work if b.so calls function from yet another d.so which then calls foo but it may be enough in many cases. And yes, I've seen this approach deployed in practice.

            Source https://stackoverflow.com/questions/41513540

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install dynamic-loader

            You can download it from GitHub.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/Ferdi265/dynamic-loader.git

          • CLI

            gh repo clone Ferdi265/dynamic-loader

          • sshUrl

            git@github.com:Ferdi265/dynamic-loader.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link