Commit 05278495 authored by Marc Vef's avatar Marc Vef
Browse files

QoL changes. Added: rpc_lookup (untested)

parent f8919df3
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ set(SOURCE_FILES src/main.cpp src/main.hpp src/fuse_ops.hpp src/configure.hpp
        src/rpc/rpc_util.hpp src/rpc/rpc_types.hpp src/rpc/rpc_defs.hpp

        # rpcs header
        src/rpc/client/c_metadata.hpp
        src/rpc/client/c_metadata.hpp src/rpc/client/c_dentry.hpp

        # util
        src/util.cpp
@@ -76,7 +76,7 @@ set(SOURCE_FILES src/main.cpp src/main.hpp src/fuse_ops.hpp src/configure.hpp
        src/rpc/rpc_util.cpp

        # rpcs src
        src/rpc/server/s_metadata.cpp src/rpc/client/c_metadata.cpp
        src/rpc/server/s_metadata.cpp src/rpc/server/s_dentry.cpp src/rpc/client/c_metadata.cpp src/rpc/client/c_dentry.cpp
        )
add_executable(adafs ${SOURCE_FILES} src/main.cpp)
target_link_libraries(adafs ${FUSE3_LIBRARIES} ${ROCKSDB_LIBRARIES}
+1 −1
Original line number Diff line number Diff line
@@ -101,7 +101,7 @@ void get_dentries(vector<Dentry>& dentries, const fuse_ino_t dir_inode) {
 * @param name
 * @return pair<err, inode>
 */
pair<int, fuse_ino_t> do_lookup(fuse_req_t& req, const fuse_ino_t p_inode, const string& name) {
pair<int, fuse_ino_t> do_lookup(const fuse_ino_t p_inode, const string& name) {
    string val; // will we filled by dentry exist check
    if (db_dentry_exists(p_inode, name, val) == 0) { // dentry NOT found
        return make_pair(ENOENT, INVALID_INODE);
+1 −1
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ int read_dentries(const fuse_ino_t p_inode, const fuse_ino_t inode);

void get_dentries(std::vector<Dentry>& dentries, const fuse_ino_t dir_inode);

std::pair<int, fuse_ino_t> do_lookup(fuse_req_t& req, const fuse_ino_t p_inode, const std::string& name);
std::pair<int, fuse_ino_t> do_lookup(const fuse_ino_t p_inode, const std::string& name);

bool create_dentry(const fuse_ino_t p_inode, const fuse_ino_t inode, const std::string& name, mode_t mode);

+8 −0
Original line number Diff line number Diff line
@@ -121,6 +121,14 @@ void RPCData::rpc_srv_create_mdata_id(hg_id_t rpc_srv_create_mdata_id) {
    RPCData::rpc_srv_create_mdata_id_ = rpc_srv_create_mdata_id;
}

hg_id_t RPCData::rpc_srv_lookup_id() const {
    return rpc_srv_lookup_id_;
}

void RPCData::rpc_srv_lookup_id(hg_id_t rpc_srv_lookup_id) {
    RPCData::rpc_srv_lookup_id_ = rpc_srv_lookup_id;
}




+5 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ private:
    hg_id_t rpc_srv_create_dentry_id_;
    hg_id_t rpc_srv_create_mdata_id_;
    hg_id_t rpc_srv_attr_id_;
    hg_id_t rpc_srv_lookup_id_;


public:
@@ -101,6 +102,10 @@ public:

    void rpc_srv_create_mdata_id(hg_id_t rpc_srv_create_mdata_id);

    hg_id_t rpc_srv_lookup_id() const;

    void rpc_srv_lookup_id(hg_id_t rpc_srv_lookup_id);

};


Loading