fdisk -c=dos -u=cylinders /dev/sdb| require 'net/http' | |
| require 'logger' | |
| req = Net::HTTP::Put.new('/', { 'expect' => '100-continue' }) | |
| req.body = 'data' | |
| http = Net::HTTP.new('localhost', 3000) | |
| http.continue_timeout = 1 | |
| http.set_debug_output(Logger.new($stdout)) | |
| http.request(req) |
| --- | |
| version: v3 | |
| variant: openshift-enterprise | |
| variant_version: '3.1' | |
| # The deployment key specifies the hosts and roles fo rthe deployment | |
| # and configuration values that apply to the deployment as a whole | |
| deployment: | |
| ansible_config: /usr/share/atomic-openshift-utils/ansible.cfg | |
| ansible_log_path: /tmp/ansible.log |
| desc "switch rails logger to stdout" | |
| task :verbose => [:environment] do | |
| Rails.logger = Logger.new(STDOUT) | |
| end | |
| desc "switch rails logger log level to debug" | |
| task :debug => [:environment, :verbose] do | |
| Rails.logger.level = Logger::DEBUG | |
| end |
To give false DNS responses from userland we need to handle different type of syscalls : gethostbyname(), gethostbyname2(), getaddrinfo(), getnameinfo(), etc.
To cover all these cases, and to prevent leaks to real dns servers, we will use two libraries : libresolv_wrapper and libnss_wrapper.
Install resolv_wrapper and nss_wrapper, either from sources or from your favorite Linux distribution.
| # in test_helper.rb (for example) | |
| def mock_env(partial_env_hash) | |
| old = ENV.to_hash | |
| ENV.update partial_env_hash | |
| begin | |
| yield | |
| ensure | |
| ENV.replace old | |
| end | |
| end |
| app.alert("XSS") |
Bllergh. This is a real pain.
The openssl extension that ships with ruby 3.0 only compiles against openssl <= 1.1, but now openssl 3.0 is shipped in debian testing/unstable.
Ruby bug here: https://bugs.ruby-lang.org/issues/18658
Version >= 3.0 of the openssl rubygem does compile against openssl 3.0 though.
I use rbenv to manage ruby versions on my system, which uses ruby-build to manage installs.