Detectar acesso à pasta no objetivo C ou C ++ no OSX (como o comando fs_usage)

Estou trabalhando em um antivírus em tempo real no OSX. O comando da linha de comandos do OSXfs_usage pode ser usado para determinar o acesso à pasta da seguinte maneira (e só pode ser executado como usuário root):

fs_usage -w -f pathname | grep '/Users/.*/Documents\|/Users/.*/Downloads' | grep mds

Em seguida, procure uma linha que contenha a frase:

    open    

(4 espaços na frente, 4 espaços depois)

Isso será emitido quando um arquivo for baixado na pasta Documentos ou Downloads. Você pode então fazer um hash de arquivo (sha256 é o melhor) e usar um banco de dados SQLite para verificar se você já examinou esse arquivo anteriormente ou não. Caso contrário, você pode digitalizar esse arquivo.

Ok, isso é interessante, mas qual é a maneira C ++ ou Objective C de determinar o acesso a pastas assim? Quero dizer, certamente ofs_usage comando está usando algum tipo de API para isso, certo?

Uma pista que eu acho que é aAPI de eventos do sistema de arquivos Apple. No entanto, não entendo muito bem dos exemplos dados para o meu cenário particular.

questionAnswers(1)

yourAnswerToTheQuestion