mirror of
https://github.com/kovidgoyal/kitty
synced 2026-06-08 14:18:26 +02:00
Start work on a SHM implementation in Go
This commit is contained in:
40
tools/utils/shm/shm_openbsd.go
Normal file
40
tools/utils/shm/shm_openbsd.go
Normal file
@@ -0,0 +1,40 @@
|
||||
// License: GPLv3 Copyright: 2022, Kovid Goyal, <kovid at kovidgoyal.net>
|
||||
|
||||
package shm
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
var _ = fmt.Print
|
||||
|
||||
const SHM_DIR = "/tmp"
|
||||
|
||||
func create_temp(pattern string) (*os.File, error) {
|
||||
ans, err := os.CreateTemp(SHM_DIR, pattern)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return ans, nil
|
||||
}
|
||||
|
||||
func Open(name string) (*os.File, error) {
|
||||
if !filepath.IsAbs(name) {
|
||||
name = filepath.Join(SHM_DIR, name)
|
||||
}
|
||||
ans, err := os.OpenFile(name, os.O_RDONLY, 0)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return ans, nil
|
||||
}
|
||||
|
||||
func Unlink(name string) error {
|
||||
if !filepath.IsAbs(name) {
|
||||
name = filepath.Join(SHM_DIR, name)
|
||||
}
|
||||
return os.Remove(name)
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user