---
tags: wp2.3, wp2, deliverable
title: 2.Labeling for users
---
# Labeling for users
Another goal for labels consists in notifying a user of **each** possible hazard a SIFIS-Home application **might** arise during its execution. A series of application permissions, requested the first time an application is run, are presented to a user who can choose which are the permitted and prohibited hazards.
If a permission is denied, all commands associated to the considered hazard are disabled and **cannot** run in any way.
To extract the hazards contained in an application, a tool called *manifest* has been developed. This tool analyzes the binary format of an application with the aim of finding all SIFIS-Home API present in it and then associates the retrieved API to their respective hazards. It requests only two parameters as input: the application binary path and the API-hazards pairing file path.
(show command line image)
The latter parameter is a JSON file characterized by an array of objects, where each object consists of an API name plus its own hazards, and since API may change in time, it is different for each version of the SIFIS-Home library.
(show json-library file)