- Today
- Total
목록ALL (106)
CODE CAVE
lex -t scanner.l > $$.scanner.c; mv $$.scanner.c scanner.c/bin/sh: lex: command not foundyacc -d grammar.ymake[1]: yacc: Command not foundMakefile:107: recipe for target 'grammar.c' failedmake[1]: *** [grammar.c] Error 127make[1]: Leaving directory '/home/mcker/hack/fragrouter-1.6/libpcap-0.4'Makefile:46: recipe for target 'libpcap-0.4/libpcap.a' failedmake: *** [libpcap-0.4/libpcap.a] Error 스니핑..
C언어에서 대문자와 소문자를 서로 변경하는 방법에는 2가지가 있습니다. 첫번째. 그냥 날 코딩입니다. 아스키코드표를 보면 대문자와 소문자간에는 32만큼의 차이가 납니다. 이 사실을 활용해서 코드를 작성하면 아래와 같습니다. #include int main(void){ char ch; printf(“Input character : ”); scanf(“%c”, &ch); if(ch >= ‘A’ && ch %c”, ch, ch+32); } else if(ch >= ‘a’ && ch %c”, ch, ch-32); } else { printf(“%c is not alphabet.”); } return 0; } ch+32와 ch-32를 보시면 어떤 느낌인지 빠르게 와닿으실거예요~ 두번째 방법은 구현 되어 있는 함수..
[데이터통신과 컴퓨터 네트워킹 기초 이론과 최신 응용] # TCP 프로토콜에서는 신뢰성 있는 데이터 전송을 위한 여러 방법을 가지고 있다. 신뢰성 있는 전송을 위한 두 가지 방법을 설명하라.오류제어 기법: 전송된 세그먼트가 손실되었거나 훼손딘 경우, 순서가 어긋나는 경우, 또는 중복되는 경우에 이에 대한 처리 기능을 수행하는 것. TCP에서는 전송 도중 세그먼트에 문제가 발생하면, 동일한 세그먼트를 다시 전송하는 방법을 사용한다.혼잡제어 기법: 네트워크로 유입되는 사용자 ㄷ트래픽의 양이 네트워크 용량을 초과하지 않도록 유지시키는 매커니즘과 기술을 말한다. # 스트링 서비스 기법에서 push mechanism에 대해 간단히 기술하라.만일 응용프로그램이 대량의 데이터에 대한 블럭을 전송하고자 할 때, TCP..
[데이터통신과 컴퓨터 네트워킹 기초 이론과 최신 응용] # 서브넷이란 무엇인지 개념을 설명하고 그 필요성에 대하여 기술하라.하나의 IP 네트워크 주소를 네트워크 내부에서 적절히 분할하여 실제로는 여러 개의 서로 연결된 지역 네트워크로 사용하는 것이다. 서브넷을 사용 하는 가장 큰 이유는 도메인 크기를 감소시키려는 데 있다. 예를 들어 B클래스 IP주소를 받은 기관의 경우 65,000여 개의 호스트 주소를 가지는 B 클래스 주소를 단일 네트워크에 부여했다고 가정하면, 이 경우 과다한 호스트 컴퓨터의 수로 인해 네트워크 트래픽이 증가함은 자명하다. 따라서 네트워크 관리자는 적절한 크기로 네트워크를 분할함으로써 효율을 극대화 할 수 있다. # A 클래스와 B 클래스의 IP 주소가 모두 고갈되었다고 가정할 때,..
[데이터통신과 컴퓨터 네트워킹 기초 이론과 최신 응용] # 6장(1) 정적 라우팅과 동적 라우팅의 장단점을 네트워크의 트래픽 관점에서 비교하여 설명하라.: 정적 라우팅은 관리자가 직접 설정한 경로로만 네트워크 통신이 일어나기 때문에 동적라우팅처럼 동적라우팅프로토콜에 의해 경로 재설정과 관련한 통신을 하지 않기 때문에 네트워크 트래픽도 그만큼 적어서 대역폭을 절감할수 있는 것이 장점이지만 관리자가 경로를 전부 설정하므로 유지보수와 확장성이 떨어진다. 즉 대규모 네트워크에 적합하지 않다.동적 라우팅은 라우팅 프로토콜에 의해 적합한 경로를 알아서 찾기 때문에 관리자의 개입이 별로 필요 없고 다이나믹하게 최적의 경로상태를 만든다. 하지만 작은 네트워크일 경우 정적라우팅처럼 딱 정해진 필요한 네트워크 트래픽만을 ..
페도라 아직도 많이 쓰죠!! 리눅스의 역할을 충실히하면서 깔끔하고 있을거 다있고 해서 교육용으로도 많이 쓴다고하죠~ 그리고 레드햇에선 새로운게 나오면 레드햇에 적용시키기 전 페도라에 먼저 해본다고합니다. 새로운걸 먼저 경험해볼 수도 있는거죠~ 근데 페도라를 접하는 일반 한국분들(저 포함)은 아마 리눅스를 배우시는 분들도 꾀 있겠지만 해킹&보안 배우실때 많이들 쓰지 않으실까 예상이 됩니다. 보통 원활한 실습을 위해 낮은 페도라 버전을 쓰죠! 근데 페도라 옛날 버전 찾기가 점점 힘들어지고 있네요.. 저도 찾는데 좀 걸렸습니다. 정식 사이트에서도 20버전인가, 밑으로는 다운로드 파일이 없더라구요! (제가 못찾은 걸까요 하하.. 있다면 댓글 부탁드려용) 아무튼 인터넷에 도는 링크들은 대부분 404 뜨고.. 그렇..
int execl(char* path, char* arg0, char* arg1, ... , char* argn, NULL) int execv(char* path, char* argv[ ]) int execlp(char* file, char* arg0, char* arg1, ... , char* argn, NULL) int execvp(char* file, char* argv[ ]) 뭔가 비슷비슷해서 차이점을 한번에 알기 조금 힘드시죠? 간단히 정리하면 execvp()는 execv()와 같으나 실행할 파일을 환경변수 PATH가 지정한 디렉터리에서 찾는 점만 다릅니다. execlp()는 execl()와 같으나 실행할 파일을 환경변수 PATH가 지정한 디렉터리에서 찾는 점만 다릅니다. 즉, "echo $PA..
태그를 쓰면 입력한 그대로 보이기 때문에 한줄로 쭉~~~ 적은 글의 경우 가로스크롤이 생기기 마련입니다. 그렇다고 오버플로우 쓰자니 가려지기만하고, 제대로 해결 되지 않습니다. 하지만 이 속성 하나면 됩니다. pre { white-space: pre-wrap; } 그럼 모두 즐코딩 되세요!!
저번에 파일 업로드를 포스팅 했었는데요~ 링크는 아래를 클릭하세요 ㅎㅎ http://kkotkkio.tistory.com/6 파일 업로드 기능을 사이트에 추가하셨다면 당연히 다운로드도 만드시겠죠? 업로드한 이유는 사용자와 공유하며 다운 받기 위함이니까요 ㅋㅋ 다행히 다운로드도 어렵지 않습니다. 짧아요~ 복붙해서 쓰셔도 좋구요 대략적으로만 설명드리면 php 파일 다운로드는 http 요청의 헤더를 변경하여 구현할 수 있습니다~ 위에서는 헤더의 타입과 길이, 파일이름 등을 지정하여 다운로드를 눌렀을 때 저 헤더와 파일을 합쳐서 응답하게 되는 것입니다. 위 소스에서 urldecode는 원본파일명에는 한글이 있을 수 있으므로 사용한 것 이구요, 파일의 전체 경로로 파일 사이즈를 구해오는게 filesize() 입니..
PHP에서의 파일 삭제는 업로드, 읽기, 쓰기 보다 훨씬 간결합니다. 뭐 다른 언어도 삭제는 다 간단하긴 하지만 ㅋㅋㅋ 아무튼 PHP에서는 unlink 라는 PHP 내장함수만 쓰면 끝! @unlink("../data/board/".$old_file); 위의 한줄이 끝입니다. ㅎㅎ 간단하죠? 매개변수로 파라미터로 파일의 경로명을 적어주시면 됩니다. @를 붙힌 이유는 만약 매개변수로 넘긴 파일명은 가진 해당 파일이 없을 경우에 에러가 출력되는데 없으면 없는대로 안지우게 될텐데 구지 사용자한테 에러를 보여줄 이유가 없기 때문에 붙힌 것입니다. 사용자 친화, 또는 서비스 신뢰를 위해서 왠만하면 일반인들한텐 외계어로 보일만한 PHP 에러는 보여지지 않는게 좋겠죠 ㅎㅎ 만약 파일을 디비화 시킨것이 있다면 통일성을 ..