@@ -80,28 +80,6 @@ func NewSender(conf SenderConfig) *Sender {
|
||||
}
|
||||
|
||||
func (s *Sender) filterCheckFS(fs string) (*zfs.DatasetPath, error) {
|
||||
// Патч: если fs пришёл без pool (nomad/...), добавляем source pool обратно
|
||||
// (но только если он не полный)
|
||||
p, err := zfs.NewDatasetPath(fs)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Если путь короткий (без pool) — добавляем первый компонент из job config или пропускаем
|
||||
// Но проще: если длина < 2, то это уже "очищенный" путь — пропускаем проверку или добавляем
|
||||
if p.Length() <= 1 {
|
||||
// Просто проверяем фильтр как есть
|
||||
pass, err := s.FSFilter.Filter(p)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !pass {
|
||||
return nil, fmt.Errorf("endpoint does not allow access to filesystem %s", fs)
|
||||
}
|
||||
return p, nil
|
||||
}
|
||||
|
||||
// Обычный путь
|
||||
dp, err := zfs.NewDatasetPath(fs)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -119,7 +97,6 @@ func (s *Sender) filterCheckFS(fs string) (*zfs.DatasetPath, error) {
|
||||
return dp, nil
|
||||
}
|
||||
|
||||
|
||||
func (s *Sender) ListFilesystems(ctx context.Context, r *pdu.ListFilesystemReq) (*pdu.ListFilesystemRes, error) {
|
||||
defer trace.WithSpanFromStackUpdateCtx(&ctx)()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user