Residual capacity of any path in a residual graph of any given flow

Given a graph G and a feasible flow f, how can I prove that the residual graph has at least one path with minimum residual capacity (f* - f)/m where f* is the maximum possible flow and m is the number of edges. The given hint is –

  1. Suppose d is the maximum possible flow in any path in the residual graph.
  2. Create the set of vertices reachable from the source with paths with minimum capacities more than d.
  3. Relate that cut with (f* - f)

Thank you.

Cross-compiler path

I have some compilers for different architectures:

$   > whereis gcc gcc: /usr/bin/gcc /usr/lib/gcc /usr/share/man/man1/gcc.1.gz  $   > whereis arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc: /usr/bin/arm-linux-gnueabi-gcc /usr/share/man/man1/arm-linux-gnueabi-gcc.1.gz  $   > whereis arm-linux-gnueabihf-gcc arm-linux-gnueabihf-gcc: ~/.local/bin/arm-linux-gnueabihf-gcc  

gcc is for my workstation. It was installed in system path.

arm-linux-gnueabi-gcc is for ARM target without hard float. It was installed in system path too.

arm-linux-gnueabihf-gcc is for ARM target with hard float. It was installed in my $ (HOME)/.local/ directory. And I have added this directory to binary path in the .bashrc script:

export PATH="$  HOME/.local/bin:$  PATH" 

The system command whereis works true for all this compilers and shows valid path to binary executable file.

I wanted to compile some project for ARM with help arm-linux-gnueabihf-gcc compiler, but I have received this:

as: unrecognised option '-mcpu=cortex-a53' 

Error during assembler. Seems that my build system wish to use assembler for my x86, not arm-linux-gnueabihf-as.

After the installing arm-linux-gnueabihf to ~/.local into the one some directories are appeared:

 ~/.local> ls -l arm-linux-gnueabihf/ bin/ gcc-linaro-5.3.1-2016.05-linux-manifest.txt include/ lib/ libexec/ share/ 

If i will go to bin/ I will see the binbary files:

arm-linux-gnueabihf-addr2line*  arm-linux-gnueabihf-cpp*        arm-linux-gnueabihf-gcc-ar*      arm-linux-gnueabihf-gdb*       arm-linux-gnueabihf-nm*       arm-linux-gnueabihf-size*     isort* arm-linux-gnueabihf-ar*         arm-linux-gnueabihf-elfedit*    arm-linux-gnueabihf-gcc-nm*      arm-linux-gnueabihf-gfortran*  arm-linux-gnueabihf-objcopy*  arm-linux-gnueabihf-strings*  pylint* arm-linux-gnueabihf-as*         arm-linux-gnueabihf-g++*        arm-linux-gnueabihf-gcc-ranlib*  arm-linux-gnueabihf-gprof*     arm-linux-gnueabihf-objdump*  arm-linux-gnueabihf-strip*    pyreverse* arm-linux-gnueabihf-c++*        arm-linux-gnueabihf-gcc*        arm-linux-gnueabihf-gcov*        arm-linux-gnueabihf-ld*        arm-linux-gnueabihf-ranlib*   epylint*                      runtest* arm-linux-gnueabihf-c++filt*    arm-linux-gnueabihf-gcc-5.3.1*  arm-linux-gnueabihf-gcov-tool*   arm-linux-gnueabihf-ld.bfd*    arm-linux-gnueabihf-readelf*  gdbserver*                    symilar*  

This path was added to $ PATH.

But if i will go to ./arm-linux-gnueabihf/bin and will do ls, i will receive empty directory. I can overcome the error, if i will add some symbolic links to this directory:

ar -> ../../bin/arm-linux-gnueabihf-ar* as -> ../../bin/arm-linux-gnueabihf-as* gcc -> ../../bin/arm-linux-gnueabihf-gcc* ranlib -> ../../bin/arm-linux-gnueabihf-ranlib* strip -> ../../bin/arm-linux-gnueabihf-strip* ... 

After this my assembler error disappears and I can successfully compile project for ARM-target. But after this I can’t compile anything for my workstation x86.

Could anyone explain me what i should to do to successful compiling and for ARM and for x86, please?

Cross-compiler path

I have some compilers for different architectures:

$   > whereis gcc gcc: /usr/bin/gcc /usr/lib/gcc /usr/share/man/man1/gcc.1.gz  $   > whereis arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc: /usr/bin/arm-linux-gnueabi-gcc /usr/share/man/man1/arm-linux-gnueabi-gcc.1.gz  $   > whereis arm-linux-gnueabihf-gcc arm-linux-gnueabihf-gcc: ~/.local/bin/arm-linux-gnueabihf-gcc  

gcc is for my workstation. It was installed in system path.

arm-linux-gnueabi-gcc is for ARM target without hard float. It was installed in system path too.

arm-linux-gnueabihf-gcc is for ARM target with hard float. It was installed in my $ (HOME)/.local/ directory. And I have added this directory to binary path in the .bashrc script:

export PATH="$  HOME/.local/bin:$  PATH" 

The system command whereis works true for all this compilers and shows valid path to binary executable file.

I wanted to compile some project for ARM with help arm-linux-gnueabihf-gcc compiler, but I have received this:

as: unrecognised option '-mcpu=cortex-a53' 

Error during assembler. Seems that my build system wish to use assembler for my x86, not arm-linux-gnueabihf-as.

After the installing arm-linux-gnueabihf to ~/.local into the one some directories are appeared:

 ~/.local> ls -l arm-linux-gnueabihf/ bin/ gcc-linaro-5.3.1-2016.05-linux-manifest.txt include/ lib/ libexec/ share/ 

If i will go to bin/ I will see the binbary files:

arm-linux-gnueabihf-addr2line*  arm-linux-gnueabihf-cpp*        arm-linux-gnueabihf-gcc-ar*      arm-linux-gnueabihf-gdb*       arm-linux-gnueabihf-nm*       arm-linux-gnueabihf-size*     isort* arm-linux-gnueabihf-ar*         arm-linux-gnueabihf-elfedit*    arm-linux-gnueabihf-gcc-nm*      arm-linux-gnueabihf-gfortran*  arm-linux-gnueabihf-objcopy*  arm-linux-gnueabihf-strings*  pylint* arm-linux-gnueabihf-as*         arm-linux-gnueabihf-g++*        arm-linux-gnueabihf-gcc-ranlib*  arm-linux-gnueabihf-gprof*     arm-linux-gnueabihf-objdump*  arm-linux-gnueabihf-strip*    pyreverse* arm-linux-gnueabihf-c++*        arm-linux-gnueabihf-gcc*        arm-linux-gnueabihf-gcov*        arm-linux-gnueabihf-ld*        arm-linux-gnueabihf-ranlib*   epylint*                      runtest* arm-linux-gnueabihf-c++filt*    arm-linux-gnueabihf-gcc-5.3.1*  arm-linux-gnueabihf-gcov-tool*   arm-linux-gnueabihf-ld.bfd*    arm-linux-gnueabihf-readelf*  gdbserver*                    symilar*  

This path was added to $ PATH.

But if i will go to ./arm-linux-gnueabihf/bin and will do ls, i will receive empty directory. I can overcome the error, if i will add some symbolic links to this directory:

ar -> ../../bin/arm-linux-gnueabihf-ar* as -> ../../bin/arm-linux-gnueabihf-as* gcc -> ../../bin/arm-linux-gnueabihf-gcc* ranlib -> ../../bin/arm-linux-gnueabihf-ranlib* strip -> ../../bin/arm-linux-gnueabihf-strip* ... 

After this my assembler error disappears and I can successfully compile project for ARM-target. But after this I can’t compile anything for my workstation x86.

Could anyone explain me what i should to do to successful compiling and for ARM and for x86, please?

Cross-compiler path

I have some compilers for different architectures:

$   > whereis gcc gcc: /usr/bin/gcc /usr/lib/gcc /usr/share/man/man1/gcc.1.gz  $   > whereis arm-linux-gnueabi-gcc arm-linux-gnueabi-gcc: /usr/bin/arm-linux-gnueabi-gcc /usr/share/man/man1/arm-linux-gnueabi-gcc.1.gz  $   > whereis arm-linux-gnueabihf-gcc arm-linux-gnueabihf-gcc: ~/.local/bin/arm-linux-gnueabihf-gcc  

gcc is for my workstation. It was installed in system path.

arm-linux-gnueabi-gcc is for ARM target without hard float. It was installed in system path too.

arm-linux-gnueabihf-gcc is for ARM target with hard float. It was installed in my $ (HOME)/.local/ directory. And I have added this directory to binary path in the .bashrc script:

export PATH="$  HOME/.local/bin:$  PATH" 

The system command whereis works true for all this compilers and shows valid path to binary executable file.

I wanted to compile some project for ARM with help arm-linux-gnueabihf-gcc compiler, but I have received this:

as: unrecognised option '-mcpu=cortex-a53' 

Error during assembler. Seems that my build system wish to use assembler for my x86, not arm-linux-gnueabihf-as.

After the installing arm-linux-gnueabihf to ~/.local into the one some directories are appeared:

 ~/.local> ls -l arm-linux-gnueabihf/ bin/ gcc-linaro-5.3.1-2016.05-linux-manifest.txt include/ lib/ libexec/ share/ 

If i will go to bin/ I will see the binbary files:

arm-linux-gnueabihf-addr2line*  arm-linux-gnueabihf-cpp*        arm-linux-gnueabihf-gcc-ar*      arm-linux-gnueabihf-gdb*       arm-linux-gnueabihf-nm*       arm-linux-gnueabihf-size*     isort* arm-linux-gnueabihf-ar*         arm-linux-gnueabihf-elfedit*    arm-linux-gnueabihf-gcc-nm*      arm-linux-gnueabihf-gfortran*  arm-linux-gnueabihf-objcopy*  arm-linux-gnueabihf-strings*  pylint* arm-linux-gnueabihf-as*         arm-linux-gnueabihf-g++*        arm-linux-gnueabihf-gcc-ranlib*  arm-linux-gnueabihf-gprof*     arm-linux-gnueabihf-objdump*  arm-linux-gnueabihf-strip*    pyreverse* arm-linux-gnueabihf-c++*        arm-linux-gnueabihf-gcc*        arm-linux-gnueabihf-gcov*        arm-linux-gnueabihf-ld*        arm-linux-gnueabihf-ranlib*   epylint*                      runtest* arm-linux-gnueabihf-c++filt*    arm-linux-gnueabihf-gcc-5.3.1*  arm-linux-gnueabihf-gcov-tool*   arm-linux-gnueabihf-ld.bfd*    arm-linux-gnueabihf-readelf*  gdbserver*                    symilar*  

This path was added to $ PATH.

But if i will go to ./arm-linux-gnueabihf/bin and will do ls, i will receive empty directory. I can overcome the error, if i will add some symbolic links to this directory:

ar -> ../../bin/arm-linux-gnueabihf-ar* as -> ../../bin/arm-linux-gnueabihf-as* gcc -> ../../bin/arm-linux-gnueabihf-gcc* ranlib -> ../../bin/arm-linux-gnueabihf-ranlib* strip -> ../../bin/arm-linux-gnueabihf-strip* ... 

After this my assembler error disappears and I can successfully compile project for ARM-target. But after this I can’t compile anything for my workstation x86.

Could anyone explain me what i should to do to successful compiling and for ARM and for x86, please?

How can we prevent to enter the path of a file each time in a script in shell?

I have a job submit script for slurm. I should enter the directory path whenever I change the submit script path. for example if I be on folder1 I should write manually: /home/job/folder1 if I want to use the script in folder2 I should write: /home/job/folder2

Is there any command to prevent manually changing of this action?

PS: I know I can use $ pwd but I did not find the right way.

How can i find path to ZLIB and OPENSSL?

I am use Ubuntu 18.04 How can i find path to library ?

I compile code, and i get this error.

-- Performing Test HAVE_CXX_FLAG_WREDUNDANT_MOVE - Success -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) CMake Error at /usr/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:137 (message): Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) Call Stack (most recent call first): /usr/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE) /usr/local/share/cmake-3.15/Modules/FindOpenSSL.cmake:413 (find_package_handle_standard_args) terminal/CMakeLists.txt:4 (find_package) 

How i can include this librarys ? i am use this string.

emcmake cmake ../node_modules/client

emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 1.38.31 clang version 6.0.1 (emscripten 1.38.31 : 1.38.31) Target: x86_64-unknown-linux-gnu Thread model: posix InstalledDir: /home/sergey/emsdk/clang/e1.38.31_64bit Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.4.0 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.4.0 Candidate multilib: .;@m64 Selected multilib: .;@m64 

bush script emcmake cmake ../node_modules/client emmake make

cmake found this file

-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") -- Found ZLIB: /usr/include /usr/lib/x86_64-linux-gnu/libz.so -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1") 

Registering/finding CVE for a PATH vulnerability when using go modules

It turns out that there’s a pretty easy-to-exploit vulnerability when using ‘go get’ and the new modules functionality in Go. My search fu isn’t finding any existing publication of the vulnerability in either google results or registered CVEs. (It may be commonly known, but I can’t find it.)

I don’t want credit, I just want awareness raised, and it would help to have a CVE to point at when anyone files bugs against existing packages.

Here’s my quandry:

  • The vulnerability is only exploitable when the user has $ GOPATH/bin at the front of their $ PATH. So it’s not strictly a Go bug.
  • The vulnerability is inherent in the decentralized nature of Go package management — essentially, anyone with a github ID has the potential to quietly install arbitrarily-named binaries into the $ PATH of users’ machines when a user runs go get. This is a feature that is desired by the Go community, so I don’t think it’s likely to change.
  • Depending on $ PATH configuration, these binaries can easily mask commonly-used system commands.
  • The only way the user can tell in advance that the package will install a binary of a particular name is by examining the code. There’s no indication in the go get command line of what is about to happen.
  • The default behavior of go get is to do all of this silently.

So what’s the right way to proceed with this? Try filing a CVE? If so, is the CNA Google, or just file it with MITRE? Is it correct to say that the software component is go get, given that I’m not expecting go get functionality to change?

Set the path of the document library to a sub-site path with JavaScript

I have a Shared Documents web part on a Project Online PDP.

The default URL is myorg.sharepoint.com/sites/pwa/Shared Documents

I have a (R/O) input field on the same page named of Project ID that contains a text value e.g.79012.

What I am trying to do is build a new URL that looks like:

myorg.sharepoint.com/sites/pwa/79012/Shared Documents

And then set the Document Library to this value.

Any help appreciated