This repository has been archived on 2025-06-10. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
server/libfic/certificate.go

35 lines
781 B
Go

package fic
import (
"os/exec"
)
func convOutput(in []byte, err error) (string, error) {
return string(in), err
}
func GenerateCA() (string, error) {
// Call the script and return its standard and error output
cmd := exec.Command("/bin/bash", "./CA.sh", "-newca")
return convOutput(cmd.CombinedOutput())
}
func GenerateCRL() (string, error) {
cmd := exec.Command("/bin/bash", "./CA.sh", "-gencrl")
return convOutput(cmd.CombinedOutput())
}
func (t Team) GenerateCert() (string, error) {
cmd := exec.Command("/bin/bash", "./CA.sh", "-newclient", t.InitialName)
return convOutput(cmd.CombinedOutput())
}
func (t Team) RevokeCert() (string, error) {
cmd := exec.Command("/bin/bash", "./CA.sh", "-revoke", t.InitialName)
return convOutput(cmd.CombinedOutput())
}