Skip to content

Instantly share code, notes, and snippets.

@IMelker
IMelker / dump_bytes.cpp
Last active May 6, 2021 17:29
Dump bytes to cstring
#include <cstring>
#include <cstdio>
void dump_bytes(const unsigned char * data, int len, char *outBuf) {
sprintf(outBuf, "%d bytes:\n", len);
char * tmp=outBuf + strlen(outBuf);
for (int j=0; j<len; j++) {
if (j % 16 == 0) {
sprintf(tmp, "%04X:", j);
tmp+=5;
@IMelker
IMelker / scope_exec.hpp
Last active May 17, 2021 06:39
RAI Initializer for C style inits
#ifndef SCOPEEXEC_H_
#define SCOPEEXEC_H_
#include <type_traits>
template <typename OnCreate, typename OnExit, class Enable = void>
class ScopeExec {
using OnCreateResultType = typename std::result_of_t<OnCreate(void)>;
public:
explicit ScopeExec(OnCreate onCreate, OnExit onExit)
@IMelker
IMelker / download_unpack_rpm.sh
Last active January 11, 2022 08:38
Download rpm of exact version from yum and unpack it
#!/bin/bash
BINARY=$1
VER=$2
echo "Find ${BINARY} package with version ${VER}"
RPM_VER=`yum -v list ${BINARY} --show-duplicates | grep ${VER} | grep -oP "${VER}-\w{40}"`
echo "Founded: ${RPM_VER}"
echo "Downloading rpm ${BINARY} with version ${VER}"
@IMelker
IMelker / svn_monit.py
Created December 8, 2022 14:46
SVN updates monitor to discord weboohook
from time import sleep
import requests
import os.path
import sys
import pprint
import svn.local
import svn.remote
@IMelker
IMelker / [DEB] Reconfigure all pacakges. [reconfigure.sh]
Last active May 18, 2023 09:41
Reconfiguare all installed packages
#!/bin/bash
# ------------------------------------------------------------
# Reconfiguare all *.deb installed packages
# Run dpkg-reconfigure for all dpkg -l
#
# USAGE insert next to terminal or run as sh script
#
# Be careful reconfiguration can broke your system
# ------------------------------------------------------------
@IMelker
IMelker / bitrate_estimator.hpp
Created July 21, 2023 07:42
Bayesian bitrate estimator
#include <cmath>
#define INITIAL_WINDOW_MS 500
#define NONINITIAL_WINDOWS_MS 150
#define UNCERTAINTY_SCALE 10.0f
#define UNCERTAINTY_SYMMETRY_CAP 0.0f
#define ESTIMATE_FLOOR_KBPS 0.0f
class BitrateEstimator {
public: