Skip to content

Instantly share code, notes, and snippets.

View moesoha's full-sized avatar
🧐
Busy working

Soha Jin moesoha

🧐
Busy working
View GitHub Profile
@moesoha
moesoha / BLINK.ASM
Last active December 10, 2023 08:38
Enable/Disable hardware blinking provided by text mode on CGA/EGA/VGA cards
@moesoha
moesoha / update-ddns.slax
Created July 15, 2022 04:36
Juniper DDNS script
version 1.0;
ns junos = "http://xml.juniper.net/junos/*/junos";
ns jcs = "http://xml.juniper.net/junos/commit-scripts/1.0";
ns curl extension = "http://xml.libslax.org/curl";
import "../import/junos.xsl";
/*
put this file as /var/db/scripts/op/update-ddns.slax
and then configure:
system {
@moesoha
moesoha / ip-ns
Last active February 18, 2021 08:37
`ip` in `iproute2` wrapper for `ifupdown`
#!/bin/sh
set -e
if [ -n "$IF_NETNS" ]; then
if [ "$1" = "exec" ]; then
shift 1
ip netns exec "$IF_NETNS" $@
else
ip -n "$IF_NETNS" $@
@moesoha
moesoha / generate_ptp_cost.sh
Last active March 17, 2023 18:04
Generate BIRD constants with ping statistics in 10s
#!/bin/sh
# gathering all interfaces with IPv6 link-local address
for with_ll in $(cat /proc/net/if_inet6 | grep "^fe80" | tr -s ' ' | cut -d ' ' -f 6 | sort -u); do
# POINTOPOINT flag is 1 << 4, filter non-PTP interfaces out
if [ $(expr \( $(($(cat /sys/class/net/$with_ll/flags))) / 16 \) % 2) -ne 1 ]; then
continue
fi
cost=65535
ping_rtt=N/A
@moesoha
moesoha / searchParams-oneliner.js
Last active December 24, 2020 15:57
Get SearchParams
// compatibility: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/fromEntries
const getQueryParams = s => Object.fromEntries(s.split('&').map(s => s.split('=')).map(a => [a.shift(), a.join('=')].map(s => decodeURIComponent(s || ''))).filter(([k, _]) => k.length > 0));
// window.$_GET = getQueryParams(window.location.search.slice(1));
@moesoha
moesoha / worker.js
Last active May 5, 2022 15:12
Auto kick added member from Telegram group (deployed on CloudFlare Worker)
addEventListener('fetch', event => event.respondWith(handleRequest(event.request)));
// Add environment variable `TGBOT_TOKEN` via Worker-Settings
async function requestTelegramBotAPI(method, payload) {
return fetch(`https://api.telegram.org/bot${TGBOT_TOKEN}/${method}`, {
method: "POST",
headers: {
"Content-Type": "application/json; charset=utf-8"
},
body: !payload ? undefined : JSON.stringify(payload)
--- a/src/gcc/c-family/c-attribs.c
+++ b/src/gcc/c-family/c-attribs.c
@@ -4894,6 +4894,11 @@
handle_optimize_attribute (tree *node, tree name, tree args,
int ARG_UNUSED (flags), bool *no_add_attrs)
{
+ if (getenv("ONLINE_JUDGE"))
+ {
+ error_at (DECL_SOURCE_LOCATION (*node), "%qE attribute is disallowed in online judge mode", name);
+ return NULL_TREE;
@moesoha
moesoha / get-cloudflare-nginx-conf.sh
Created June 15, 2020 10:52
This script creates Nginx config snippets that can deny non-CloudFlare IP or set real Client IP from trusted header.
#!/bin/sh
echo "===== Fetching CloudFlare latest IPs ====="
IP4LIST=$(curl https://www.cloudflare.com/ips-v4)
IP6LIST=$(curl https://www.cloudflare.com/ips-v6)
echo "===== Creating Real IP config ====="
printf "$IP4LIST\n\n$IP6LIST\n\n" | sed -E 's/(.+)/set_real_ip_from \1;/' - | tee cloudflare_real_ip.conf
echo "real_ip_header CF-Connecting-IP;" | tee --append cloudflare_real_ip.conf
@moesoha
moesoha / _1020_lxl.py
Last active July 20, 2019 02:39
CTB lxl plugin
import logging
import cqhttp
import telegram
import random
import traceback
import global_vars
from bot_constant import *
from main.command import command_listener
@moesoha
moesoha / deploy-mtproto.sh
Last active January 24, 2023 06:22
Simple deploy script for deploying MTProto proxy on Debian
#!/bin/sh
if [ $# -ne 1 ]
then
echo take port number as argument
exit 1
fi
apt update && apt install -y git curl build-essential libssl-dev zlib1g-dev