172 похожих чатов

Доброго времени суток.. Подскажите, как можно адекватно и без расширений узнать

стек вызова функции?

задача такова:
Есть функция check_permissions(username text);
Есть простые функции: f1, f2, f3, f4.....
check_permissions должна проверять, имеет ли право пользователь выполнять функцию ( и, если выполнять, то какими привилегиями )
Вместо того, чтобы делать check_permissions(username text, func_name text); хочется взять и из стека посмотреть, что вызывало её

т.е. выглядеть должно так:
f1('user_admin')
{
check_permissions('user_admin');
........
}
Внутри check_permissions('user_admin');
Выполняется просмотр стека и находим функцию уровнем выше ... и для неё проверку делаем

1 ответов

12 просмотров

Если функции на pl/pgSQL, можете сделать как-то так: DECLARE v_context text; BEGIN begin assert false; exception when assertion_error then get stacked diagnostics v_context := pg_exception_context; end; --далее разбираем v_context ...

Похожие вопросы

Обсуждают сегодня

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Добрый день подскажите пожалуйста может кто то сталкивался с ошибками Sentry 22.10.0 развернутым из helm чарт в Kubernetes? Изначально 3 дня назад очень стало много событий ух...
Tire4 Finist Devops
1
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
почому оно не работает?
Vi Chapmann Chapmann
19
Так а кто может спарсить всех участников чата? Идишники
Magic
18
а как ловят такое ghci> res <- getPos2 urlt 0 (alist !! 0) 200 ghci> res SearchAtom (Search "www.google.com" "/search?q=" "Haskell") "haskell.org" (SearchTS [(2024-05-06 07:...
Fedor
14
Есть вопрос: допустим есть железка с каким-то интерфейсом(допустим usb), но как по этому интерфейсу железкой управлять неизвестно, прог нету, а управлять очень хочется надо. К...
Mixail Frolov
15
Карта сайта