Skip to content

Instantly share code, notes, and snippets.

View ks888's full-sized avatar

Kishin Yagami ks888

View GitHub Profile
@ks888
ks888 / helloworld.go
Created July 21, 2018 05:09
Dynamic code generation example in Golang (Linux, x86_64)
package main
import (
"fmt"
"log"
"reflect"
"syscall"
"unsafe"
)
@ks888
ks888 / mycallback.c
Last active May 30, 2018 14:39
closure in C, inspired by libffcall
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include <sys/mman.h>
#include <unistd.h>
#include "mycallback.h"
static uint8_t codes[] = {
0x48, 0xc7, 0xc0, 0x00, 0x00, 0x00, 0x00, /* mov $0x00000000,%rax */
@ks888
ks888 / echo_client.go
Created March 17, 2018 05:44
TCP echo server/client to be used with strace
package main
import (
"log"
"net"
)
func main() {
conn, err := net.Dial("tcp", "localhost:8080")
if err != nil {
@ks888
ks888 / ping.go
Last active March 8, 2018 10:13
ping command in golang, just for fun
package main
import (
"bytes"
"fmt"
"log"
"net"
"os"
"time"
)
@ks888
ks888 / error_case_test.go
Created December 23, 2017 03:57
Client-go usage example 5
package main
import (
"errors"
"fmt"
"log"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/kubernetes/fake"
@ks888
ks888 / normal_case_test.go
Created December 23, 2017 03:56
Client-go usage example 4
package main
import (
"fmt"
"log"
core_v1 "k8s.io/api/core/v1"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes/fake"
)
@ks888
ks888 / in_cluster_client.go
Created December 23, 2017 03:55
Client-go usage example 3
package main
import (
"fmt"
"log"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
)
@ks888
ks888 / choose_k8s_cluster.go
Created December 23, 2017 03:55
Client-go usage example 2
package main
import (
"fmt"
"log"
"os"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/clientcmd"
@ks888
ks888 / get_started.go
Created December 23, 2017 03:54
Client-go usage example 1
package main
import (
"fmt"
"log"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/clientcmd"
)
@ks888
ks888 / choose_k8s_cluster.go
Created December 23, 2017 03:44
Client-go usage examples
package main
import (
"fmt"
"log"
"os"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/tools/clientcmd"