socket編程bind出錯,因爲綁定重複的地址和端口


        int flag=1,flaglen=sizeof(int);

        if ( (sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0)
        {
                perror("socket");
                PR_LOG(bluetooth_lm, PR_LOG_DEBUG, ("[%s] socket function fail < 0", __func__) );
                return;
        }

        if( setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &flag, flaglen) == -1)
        {
                perror("setsockopt");
                PR_LOG(bluetooth_lm, PR_LOG_DEBUG, ("[%s] setsockopt fail", __func__) );
                return;
        }

        if (bind(sock, (struct sockaddr *)&addr, sizeof(addr)) < 0)
        {
                perror("bind");
                PR_LOG(bluetooth_lm, PR_LOG_DEBUG, ("[%s] bind function fail < 0", __func__) );
                return;
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章