Skip to content

Instantly share code, notes, and snippets.

View kitsook's full-sized avatar

Clarence K.C. Ho kitsook

View GitHub Profile
@kitsook
kitsook / Main.java
Created December 21, 2022 05:57
Testing HashMap with multi-thread operations under specific conditions
package net.clarenceho;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@kitsook
kitsook / rules.yml
Created October 31, 2022 02:59
Rule based static analysis - rules
---
name: "BigDecimal explicit toString"
description: "find code that explicitly call BigDecimal toString"
condition: "resolvedMethodRef.getPackageName().toString().equals(\"java.math\") &&
resolvedMethodRef.getClassName().toString().equals(\"BigDecimal\") &&
node.getName().toString() == \"toString\""
actions:
- "System.out.print(\"Cautions! Explicitly calling BigDecimal toString() in \" + file.toString());
if (node.getRange().isPresent()) {
System.out.println(\" at \" + node.getRange().get().toString());
@kitsook
kitsook / ShufflePerformance.java
Created August 2, 2022 03:59
Simulate the performance issue of Collections.shuffle
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.concurrent.ForkJoinPool;
import java.util.stream.IntStream;
public class ShufflePerformance {
private static final int PARALLELISM = 4;
private static final int LIST_SIZE = 100;
package net.clarenceho.test;
public class FizzBuzz {
public static String doFizzBuzz1(int i) {
StringBuilder sb = new StringBuilder();
if (i % 3 == 0) {
sb.append("Fizz");
}
if (i % 5 == 0) {
@kitsook
kitsook / ripVCD.sh
Last active April 6, 2021 00:42
Shell script to rip VCD with VLC and then transcode with ffmpeg
#!/bin/bash
set -e
## Script to rip VCD with VLC and then transcode with ffmpeg
if [ "${BASH_VERSINFO}" -lt 4 ]; then
echo "Require bash 4 or higher"
exit 1
fi
@kitsook
kitsook / Dockerfile
Created December 13, 2020 07:16
Alt attempt on Google CTF 2020 writeonly
FROM ubuntu:20.04
RUN apt-get update && apt-get upgrade -y && apt-get install -y socat
RUN set -e -x; \
groupadd -g 1337 user; \
useradd -g 1337 -u 1337 -m user
COPY attachments/chal /home/user/
COPY flag /home/user/
ROCk module is loaded
userx is member of video group
=====================
HSA System Attributes
=====================
Runtime Version: 1.1
System Timestamp Freq.: 1000.000000MHz
Sig. Max Wait Duration: 18446744073709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model: LARGE
System Endianness: LITTLE
@kitsook
kitsook / SConscript
Last active June 23, 2020 21:21
SConscript for compiling v8 engine under MongoDB 3.0.x source tree
# Copyright 2012 the V8 project authors. All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
@kitsook
kitsook / lsusb.txt
Created March 26, 2019 05:44
Jetson Nano lsusb
~$ sudo lsusb -v
Bus 002 Device 002: ID 0bda:0411 Realtek Semiconductor Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.20
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 3
@kitsook
kitsook / dmesg.txt
Created March 26, 2019 04:01
Jetson Nano
~$ dmesg
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.9.140-tegra (buildbrain@mobile-u64-3531) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #1 SMP PREEMPT Wed Mar 13 00:32:22 PDT 2019
[ 0.000000] Boot CPU: AArch64 Processor [411fd071]
[ 0.000000] OF: fdt:memory scan node memory@80000000, reg size 48,
[ 0.000000] OF: fdt: - 80000000 , 7ee00000
[ 0.000000] OF: fdt: - 100000000 , 7f200000
[ 0.000000] Found tegra_fbmem: 00800000@92cb6000
[ 0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb0_carveout': base 0x0000000000000000, size 0 MiB
[ 0.000000] OF: fdt:Reserved memory: failed to reserve memory for node 'fb0_carveout': base 0x0000000000000000, size 0 MiB