def check_free_field(st, reject_non_free_field=False):
    """
    Checks free field status of stream.

    Args:
        st (obspy.core.stream.Stream):
            Stream of data.
        reject_non_free_field (bool):
            Should non free-field stations be failed?

    Returns:
        Stream that has been checked for free field status.
    """
    if not st.passed:
        return st

    for trace in st:
        if not trace.free_field and reject_non_free_field:
            trace.fail('Failed free field sensor check.')

    return st