# File lib/net/ssh/authentication/key_manager.rb, line 97
 97:         def each_identity
 98:           prepared_identities = prepare_identities_from_files + prepare_identities_from_data
 99: 
100:           user_identities = load_identities(prepared_identities, false)
101: 
102:           if agent
103:             agent.identities.each do |key|
104:               corresponding_user_identity = user_identities.detect { |identity|
105:                 identity[:public_key] && identity[:public_key].to_pem == key.to_pem
106:               }
107:               user_identities.delete(corresponding_user_identity) if corresponding_user_identity
108: 
109:               if !options[:keys_only] || corresponding_user_identity
110:                 known_identities[key] = { :from => :agent }
111:                 yield key
112:               end
113:             end
114:           end
115: 
116:           user_identities = load_identities(user_identities, true)
117: 
118:           user_identities.each do |identity|
119:             key = identity.delete(:public_key)
120:             known_identities[key] = identity
121:             yield key
122:           end
123: 
124:           self
125:         end