In this paper, we focus on a class of information propagation problems where a group of nodes (destinations) wants to gather a function of data that are stored by another disjoint group of nodes (sources). We assume that the function can be decomposed as a sum of functions of local variables. We study an algorithm which computes the function along the routes from sources to destinations iteratively, via gossiping among near neighbors. More specifically, in our protocol each node updates its own local value as a linear combination of its neighbors' values, repeatedly. Given the underlying network connectivity and the source-destination sets, we provide necessary and sufficient conditions for the feasibility of non-negative update weights. We further introduce topology based necessary conditions for the feasibility and discuss about known infeasible scenarios. By introducing the notion of source clusters, we also show that the complexity of the design problem is not directly related to the number of source nodes but the number of source clusters in the network.